gpt4 book ai didi

android - 根据设备格式更改 LayoutManager

转载 作者:行者123 更新时间:2023-12-04 02:14:23 25 4
gpt4 key购买 nike

我有一个带有卡片列表的 RecyclerView。我想知道是否可以通过编程将 RecyclerView 的 LayoutManager 更改为 Linear(在使用手机时)和 StaggeredGrid(在使用平板电脑时)。我最初的想法是在 Activity 上使用相同的代码,只更改 layout.xml,但考虑到 Android 使用不同的 LayoutManager,这似乎并不复杂。我也尝试过使用 Cardslib 库,但是 reeeaall 被文档弄糊涂了,因为没有自定义卡片的完整示例。有什么想法吗?

最佳答案

是的,这是可能的。一种解决方案是在您的值文件夹中定义一个 bool 资源。例如,您可以定义:

<bool name="is_phone">true</bool>

在您的 values 文件夹以及您的 values-sw720dp 和 values-sw600dp 中添加相同的资源并设置为 false。

<bool name="is_phone">false</bool>

然后,在您的 Activity 的 onCreate() 中,您可以这样做:

    boolean isPhone = getResources().getBoolean(R.bool.is_phone);

if (isPhone) {
// Set linearlayoutmanager for your recyclerview.
} else {
// Set staggeredgridlayoutmanager for your recyclerview.
}

关于android - 根据设备格式更改 LayoutManager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35237549/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com