我想在左侧(主)侧使用带有 GridView 的 Master-Detail-Flow。
根据the documentation , GridView
有一个方法 setItemChecked(position, value)
添加到 API 级别 1。然而,Eclipse 声明该方法需要 API 级别 11。
哪个是真的?如果我想在我的 GridView 中检查项目,我是否需要自己实现逻辑(通过背景更改等)?
最佳答案
根据我的经验,官方文档是错误的。
AbsListView.setItemChecked(position, value)
仅从 HoneyComb (API 11) 开始存在。令人困惑的是 ListView.setItemChecked(position, value)
确实存在于 API 1 而 GridView.setItemChecked(position, value)
不存在。我认为 API 11 中修复的只是糟糕的 API 设计。
可能是由于文档生成器的限制,因为该方法在 API 11 中沿继承链向上移动到 AbsListView
。AbsListView
中的方法应标记为Added in API level 11
而 ListView
中的方法应标记为 Added in API level 1
。
我没有使用过它,但有人创建了一个 GridViewCompat
来解决这个问题。
https://github.com/paramvir-b/AndroidGridViewCompatLib
关于android - GridView.setItemChecked(位置, 值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16940138/