簡體   English   中英

viewpager jetpack compose 中的垂直滾動不起作用

[英]vertical scroll in viewpager jetpack compose is not working

使用 Accompanist 在 Horizontal View Pager 中遇到垂直滾動問題。 無法在 HorizontalViewPager 中垂直滾動列。 因此,請查看代碼並更正如何修復它或任何其他解決方案。 如果可能的話,將不勝感激。

                HorizontalPager(
                count = 10,
                modifier = Modifier.fillMaxSize()
            ) { page ->



                Column(
                    modifier = Modifier
                        .fillMaxWidth()
                        .fillMaxHeight(),
                ){
                    ScoreCardListItem()
                    Spacer(modifier = Modifier.height(16.dp))
                    ScoreCardListItem()
                    Spacer(modifier = Modifier.height(16.dp))
                    ScoreCardListItem()
                    Spacer(modifier = Modifier.height(16.dp))
                    ScoreCardListItem()
                    Spacer(modifier = Modifier.height(16.dp))
                    ScoreCardListItem()
                    Spacer(modifier = Modifier.height(16.dp))
                    ScoreCardListItem()
                    Spacer(modifier = Modifier.height(16.dp))
                    ScoreCardListItem()
                }
            }

使用 Column 時無法垂直滾動。 如果嘗試使用 LazyColumn ,則會產生錯誤。 這是伴奏者 ViewPager 鏈接伴奏者

使用 LazyColumn 檢查

           LazyColumn(
            modifier = Modifier
                .padding(16.dp)
                .fillMaxSize()
             ) {
                 item {
                    ScoreCardListItem()
                    Spacer(modifier = Modifier.height(16.dp))
                    ScoreCardListItem()
                    Spacer(modifier = Modifier.height(16.dp))
                    ScoreCardListItem()
                    Spacer(modifier = Modifier.height(16.dp))
                    ScoreCardListItem()
                    Spacer(modifier = Modifier.height(16.dp))
                    ScoreCardListItem()
                    Spacer(modifier = Modifier.height(16.dp))
                    ScoreCardListItem()
                    Spacer(modifier = Modifier.height(16.dp))
                    ScoreCardListItem()
                   }
                }

另一種可能的解決方案是使用 Modifier 的垂直滾動屬性。 就像下面的代碼

modifier = Modifier
            .verticalScroll(rememberScrollState())

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM