Android启用ListView中的下一个项目

问题描述 投票:0回答:2

我在ListView]中有N records,通过default,我想将1st list item视为enabled],将其他items视为disabled,以实现相同的目的,我是在Adapter类的isEnabled方法内部编写了一个小逻辑,并且在works

@Override
    public boolean isEnabled(int position) {
        if(position == 0)
            return true;
        else
            return false;
    }

一旦用户点击列表项目1

(只有这样我才想启用列表中的项目编号2),并且当用户点击列表项目2(我们刚刚启用时,我要启用项目编号3

并且要实现这一点,我正在使用以下代码行:

int enableIndex = position + 1;
Toast.makeText(getApplicationContext(), String.valueOf(enableIndex), Toast.LENGTH_SHORT).show();
listview.getChildAt(enableIndex).setEnabled(true);

当我点击当前项目时,我可以看到下一个项目的索引,但是无法使用

使下一个项目启用

我在ListView中有N条记录,默认情况下,我想将第一个列表项视为已启用,而将其他项视为已禁用,为达到相同目的,我在Adapter类的isEnabled方法内编写了一个小的逻辑...

android listview android-listview
2个回答
0
投票

您可以在模型类中有一个布尔字段enabled,然后对其进行更新。然后为该特定位置调用notifyItemChanged。像这样的东西..


0
投票

您只需在bindViewHolder上添加holder.itemView.isEnable = enablePos ==位置行。当您单击项目视图时,请在行下方添加。enablePos = adapterPosition + 1notifyItemChanged(enablePos)

© www.soinside.com 2019 - 2024. All rights reserved.