gpt4 book ai didi

java - Button.setClickable(false) 不工作

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:05:39 26 4
gpt4 key购买 nike

我已经在我的代码中设置了 mButton.setClickable(false); 但这个按钮仍然被我代码的全局 button.setOnClickListener 调用。

编辑:抱歉延迟更新。以下是我遇到问题的详细信息 View 。
在我的 ListView customAdapter 类 getView 方法中

@Override
public View getView(int position, View convertView, ViewGroup parent)
{
View row = convertView;
YourWrapper wrapper = null;
HashMap<String, Object> cTa= new HashMap<String, Object>();
cTa= d.getPosition(position)
Button mButton = (Button)convertView.findViewById(R.id.mBtn);
if (row == null)
{
row = inflater.inflate(R.layout.layout, parent, false);
wrapper = new YourWrapper (row);
row.setTag(wrapper);
}
else
wrapper = (YourWrapper) row.getTag();

if(success)
{
// section-1
mButton.setClickable(true);
}
else{
// section-2
mButton.setClickable(false);
mButton.setFocusable(false);
}
wrapper.getButton().setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
//operation
}
});

return row;
}

以上是当前有效的代码,在第 2 节中,它使 mButton 可点击 - 错误和可聚焦 - 错误,但它仍然监听下面的 wrapper.getButton().setOnClickListener() 并执行操作。请建议我。抱歉延迟更新。谢谢!

更新:我已经进行了以下修复,暂时解决了这个问题。

// section-2
mButton.setVisibility(View.GONE);
mButton.setClickable(false);
mButton.setFocusable(false);

最佳答案

这似乎是设计使然。这来自 View.setOnClickListener 的文档方法:

Register a callback to be invoked when this view is clicked. If this view is not clickable, it becomes clickable.

关于java - Button.setClickable(false) 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18825747/

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