package Ġde . paul we ber . sp ender ino . android . screens . recipient Ċ Ċ import Ġandroidx . compose . foundation . layout . Column Ċ import Ġandroidx . compose . foundation . layout . fill MaxSize Ċ import Ġandroidx . compose . material . Material Theme Ċ import Ġandroidx . compose . material . Tab Ċ import Ġandroidx . compose . material . Tab Row Ċ import Ġandroidx . compose . material . Tab Row Defaults Ċ import Ġandroidx . compose . material . Text Ċ import Ġandroidx . compose . material . content Color For Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . runtime . remember Coroutine Scope Ċ import Ġandroidx . compose . ui . Alignment Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . res . string Resource Ċ import Ġcom . google . ac comp an ist . pager . Experimental Pager Api Ċ import Ġcom . google . ac comp an ist . pager . Horizontal Pager Ċ import Ġcom . google . ac comp an ist . pager . pager Tab Indicator Offset Ċ import Ġcom . google . ac comp an ist . pager . remember Pager State Ċ import Ġde . paul we ber . sp ender ino . android . R Ċ import Ġde . paul we ber . sp ender ino . view model . Recipient State Ċ import Ġde . paul we ber . sp ender ino . view model . Recipient ViewModel Ċ import Ġkotlinx . coroutines . launch Ċ Ċ @ Opt In ( Experimental Pager Api :: class ) Ċ @ Composable Ċ fun ĠRe cipient Pager View ( ĊĠĠĠ Ġrecipient ViewModel : ĠRe cipient ViewModel , ĊĠĠĠ Ġstate : ĠRe cipient State . Pager Ċ ) Ġ{ ĊĠĠĠ Ġval Ġpager State Ġ= Ġremember Pager State () ĊĠĠĠ Ġval Ġcoroutine Scope Ġ= Ġremember Coroutine Scope () ĊĊĠĠĠ ĠColumn ( modifier Ġ= ĠModifier . fill MaxSize ()) Ġ{ ĊĠĠĠĠĠĠĠ ĠTab Row ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġselected TabIndex Ġ= Ġpager State . currentPage , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Ġ= ĠMaterial Theme . colors . surface , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Color Ġ= Ġcontent Color For ( Material Theme . colors . surface ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġindicator Ġ= Ġ{ Ġtab Positions Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTab Row Defaults . Indicator ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠModifier . pager Tab Indicator Offset ( pager State , Ġtab Positions ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTab ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġ{ ĠText ( string Resource ( R . string . recipient _ tab _ qr )) Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Ġ= Ġpager State . currentPage Ġ== Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Ġ= Ġ{ Ġcoroutine Scope . launch Ġ{ Ġpager State . animate Scroll To Page ( 0 , Ġ 0 f ) Ġ} Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTab ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġ{ ĠText ( string Resource ( R . string . recipient _ tab _ balance )) Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Ġ= Ġpager State . currentPage Ġ== Ġ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Ġ= Ġ{ Ġcoroutine Scope . launch Ġ{ Ġpager State . animate Scroll To Page ( 1 , Ġ 0 f ) Ġ} Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠHorizontal Pager ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcount Ġ= Ġ 2 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstate Ġ= Ġpager State , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvertical Alignment Ġ= ĠAlignment . Top , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. fill MaxSize () ĊĠĠĠĠĠĠĠ Ġ) Ġ{ Ġpage Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( page ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> ĠRe cipient Profile View ( state . qr State ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġ-> ĠRe cipient Balance View ( state . balance State , Ġrecipient ViewModel ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ