我希望当我点击列表视图行时,按钮应该可见,当我再次点击同一行时该按钮应该消失。在第一次单击按钮出现但再次点击它不会变得不可见。在日志中我可以看到"不可见"但不是另一个。
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> list, View v, int pos, long id) {
System.out.println("I clicked row item");
Button button1 = (Button)v.findViewById(R.id.button1);
if(!shouldVisible)//IF IT IS invISIBLE
{
System.out.println("value is"+shouldVisible);
button1.setVisibility(View.VISIBLE);
shouldVisible = false;
}
else //IF IT IS NOT inVISIBLE
{
System.out.println(shouldVisible);
button1.setVisibility(View.INVISIBLE);
shouldVisible = true;
}
Toast.makeText(getActivity(), "YOU CLICKED ITEM "+pos,Toast.LENGTH_SHORT).show();
}
});
答案 0 :(得分:1)
拿一个布尔值 让我们来看看
private boolean shouldVisible;
在你的onitemclick中 你可以做以下事情
if(!shouldVisible)
{
yourButton.setVisiblity(View.VISIBLE);
shouldVisible = true;
}
else
{
yourButton.setVisiblity(View.GONE);
shouldVisible = false;
}
和
Button button1;
在外面使用
并使用此
button1 = (Button)v.findViewById(R.id.button1);
在onitemclick内部
答案 1 :(得分:-1)
尝试:
button1.setVisiblity(View.GONE);
View.GONE此视图不可见,并且不需要任何空间用于布局。
View.INVISIBLE此视图不可见,但仍会占用空间以进行布局。