1
1
package dev.materii.pullrefresh.demo.sample
2
2
3
- import androidx.compose.foundation.layout.Box
3
+ import androidx.compose.foundation.background
4
4
import androidx.compose.foundation.layout.fillMaxSize
5
- import androidx.compose.foundation.rememberScrollState
6
- import androidx.compose.foundation.verticalScroll
5
+ import androidx.compose.foundation.layout.fillMaxWidth
6
+ import androidx.compose.foundation.layout.padding
7
+ import androidx.compose.foundation.lazy.LazyColumn
8
+ import androidx.compose.foundation.shape.RoundedCornerShape
7
9
import androidx.compose.material3.MaterialTheme
8
10
import androidx.compose.material3.Text
9
11
import androidx.compose.runtime.Composable
10
- import androidx.compose.ui.Alignment
11
12
import androidx.compose.ui.Modifier
12
- import dev.materii.pullrefresh.DragRefreshLayout
13
+ import androidx.compose.ui.unit.dp
13
14
import dev.materii.pullrefresh.DragRefreshIndicator
15
+ import dev.materii.pullrefresh.DragRefreshLayout
14
16
import dev.materii.pullrefresh.PullRefreshState
15
17
16
18
@Composable
17
19
fun DragRefreshSample (
18
20
flipped : Boolean ,
19
21
pullRefreshState : PullRefreshState ,
20
- modifier : Modifier = Modifier
22
+ modifier : Modifier = Modifier ,
23
+ isRefreshing : Boolean
21
24
) {
22
25
DragRefreshLayout (
23
26
modifier = modifier,
@@ -31,13 +34,22 @@ fun DragRefreshSample(
31
34
)
32
35
}
33
36
) {
34
- Box (
35
- modifier = Modifier
36
- .fillMaxSize()
37
- .verticalScroll(rememberScrollState()),
38
- contentAlignment = Alignment .Center
37
+ LazyColumn (
38
+ Modifier .fillMaxSize(),
39
+ userScrollEnabled = ! isRefreshing
39
40
) {
40
- Text (text = " Pull ${if (flipped) " up" else " down" } to refresh" )
41
+ items(100 ) {
42
+ Text (
43
+ modifier = Modifier
44
+ .fillMaxWidth()
45
+ .padding(5 .dp)
46
+ .background(
47
+ color = MaterialTheme .colorScheme.outline,
48
+ shape = RoundedCornerShape (10 .dp)
49
+ )
50
+ .padding(10 .dp), text = " No. $it "
51
+ )
52
+ }
41
53
}
42
54
}
43
55
}
0 commit comments