kotlin 未解析的引用:分页标签指示器偏移量

8cdiaqws  于 2022-12-13  发布在  Kotlin
关注(0)|答案(2)|浏览(188)

我是一个很新的喷气背包,并按照this指南。
当我尝试创建我的标签时,我遇到了UnresolvedReference,我不知道为什么

@ExperimentalPagerApi
@ExperimentalMaterialApi
@Composable
fun Tabs(tabs: List<TabItem>, pagerState: PagerState) {
    val scope = rememberCoroutineScope()
    TabRow(
        selectedTabIndex = pagerState.currentPage,
        backgroundColor = colorResource(id = R.color.colorPrimaryDark),
        contentColor = Color.White,
        indicator = { tabPositions ->
            TabRowDefaults.Indicator(
                Modifier.pagerTabIndicatorOffset(pagerState, tabPositions)
            )
        }) {
        tabs.forEachIndexed { index, tab ->
            LeadingIconTab(
                selected = pagerState.currentPage == index,
                text = { Text(tab.title) },
                icon = { Icon(painter = painterResource(id = tab.icon), contentDescription = "") },
                onClick = {
                    scope.launch {
                        pagerState.animateScrollToPage(index)
                    }
                },
            )
        }
    }

其他一切都正常。我在我的build.gradle中有implementation("com.google.accompanist:accompanist-pager:0.28.0"),正在导入
我是不是在什么地方错过了导入或库?类本身中的androidx.compose.ui.Modifier。我知道我在其他地方看到了这是一个常见的修改器问题。

kuuvgm7e

kuuvgm7e1#

它是一个单独的,您必须在依赖项中指定。

implementation 'com.google.accompanist:accompanist-pager-indicators:0.27.1'

我删除了我的和相同的错误显示

envsm3lx

envsm3lx2#

从Jetpack合成1.4.0-alpha 03开始,有一个本地HorizontalPager. androidx.compose.foundation.pager.HorizontalPager,您不必使用pagerTabIndicatorOffset。
样品

@Composable
private fun HomeContent() {

    val pagerState: PagerState = rememberPagerState(initialPage = 0)
    val coroutineScope = rememberCoroutineScope()

    TabRow(
     
        selectedTabIndex = pagerState.currentPage
    ) {
        // Add tabs for all of our pages
        tabList.forEachIndexed { index, title ->
            Tab(
                text = { Text(title) },
                selected = pagerState.currentPage == index,
                onClick = {
                    coroutineScope.launch {
                        pagerState.animateScrollToPage(index)
                    }
                },
            )
        }
    }

    HorizontalPager(
        state = pagerState,
        pageCount = tabList.size,
        beyondBoundsPageCount = 3
    ) { page: Int ->

        when (page) {
           
        }
    }
}

相关问题