首先我要说的是,如果你能想出一个更好的标题来解决这个问题,可以随意改变它,因为我不知道如何在短时间内解释这个问题。
所以这是我的问题:
对于我试图制作的应用程序,我有这些日程安排,今天有一个日程安排,未来几天安排一个。这两个都是片段内的列表视图。
(我使用这些片段创建标签以分隔两者。)
每个游戏(让我们称之为游戏,因为称他们为活动会让人感到困惑),时间表上有一个状态,这就是烦人的部分来了。我被要求检查是否有任何游戏已启动,如果是,我需要禁用按钮启动任何其他游戏,而不是已经正在进行的游戏。
编辑:主要问题是我无法在listview项目上使用findViewById,因为显然它是一个空对象引用
我做了一些“绘画”,为你提供了更多的图形表示。
很长一段时间,我需要一种方法来检查status
内listview item
内listview
内的fragment
内activity
使用所述状态来禁用除正在进行的游戏之外的每个按钮。
小方注意:如果尚未开始游戏,则启用所有按钮。
我希望这是有道理的。
如果你想要一些代码,请随时提出,但要注意,我正在测试应用程序中进行这样的测试数据和无用的代码。
编辑: 这是我陷入更清晰的例子的地方: 启动按钮已启用但应禁用。
在列表中向下滚动,有一个开始的'游戏',就在它下方,一个与前一个图片中状态相同的游戏,按钮被禁用。
这是因为在状态为“start”的游戏过后,我的代码中的“isStartable”布尔值变为false,并禁用以下项目。
当我向上滚动时,应该是这样,项目全部被禁用但是当listview被填满时我需要它们是这样的。有没有办法刷新这个listview中的数据并使用“isStartable”布尔值?
答案 0 :(得分:0)
为listview数据项创建一个模型类。在模型类中设置一个布尔变量,如isGameStarted。根据你的结果设置该变量。然后在listview适配器中,输入一个条件
if(isGameStarted){
holder.startButton.setEnable(true);
else
holder.startButton.setEnable(false);