java - 如何在特定项目上启用/禁用 ListView onItemClickListener?
问题描述
我正在设计一个游戏,玩家必须按顺序完成关卡才能进入下一个关卡。有没有办法实现这个?
我已经在我的自定义 ListAdapter 中尝试过这个
@Override
public boolean isEnabled(int position) {
if(position==0){ return true;}
else{return false;}
}
但我无法找到一种方法来处理不止一个级别。
解决方案
你可以通过下面的代码来做到这一点setOnItemClicklistener()
ListView listview = (ListView) findViewById(R.id.listview);
listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if (listview.getChildAt(position).isEnabled()) {
listview.getChildAt(position).setEnabled(false);
}
}
});
推荐阅读
- opencv - 如何使用图像处理从顶视图找到铰链点或旋转轴点?
- wordpress - 301 将所有“Site.com/Postname.html/xyz”重定向到“Site.com/Postname.html”
- html - 滚动条在选择项目时不会用箭头键向下移动
- python - 在第 1 列的键上合并两个 csv 文件
- c - 在这段代码中,为什么 Write() 不适用于 Int?
- react-native - 在 react-native 0.60 中运行 react-native-app-auth 时出错
- java - 如何在 java Apache POI 中使用分页符拆分文档
- angular - 使用 Angular 应用程序中的 ms adal 访问 Web api 的问题
- excel - 更改工作簿 vba 的访问模式
- html - 标准化现有大型网站的字体大小