我在listview.i中使用checkedtextview想要在首次加载列表视图时显示文本视图。当我点击一个按钮时,我想用不同的数据填充列表视图,并且还应该显示该复选框。(im最初无法隐藏已检查textview的复选框).plz帮助我
答案 0 :(得分:6)
我只想使用一个自定义适配器,它将返回TextView或CheckedTextView,具体取决于您是否单击了按钮。
您也可以尝试checkedTextView.setCheckMarkDrawable(null);
答案 1 :(得分:0)
<CheckedTextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="?android:attr/listPreferredItemHeightSmall"
android:checkMark="@null"/>
答案 2 :(得分:0)
这个问题已经过时了,但这可能有助于未来的人
第1步
在onCreate中创建一个boolean
变量以简化if|else|while
方法(将在步骤3中使用)
boolean changedData = true;
第2步
我想在首次加载d列表视图时显示文本视图
保持代码不变,假设它看起来像这样
ArrayAdapter<String> adapter
= new ArrayAdapter<String>(yourActivity.this,
android.R.layout.simple_list_item_1,
yourData);
listView.setAdapter(adapter);
第3步
当我点击一个按钮时,我想用不同的数据填充列表视图,并且还应该显示复选框
只需像这样创建一个新按钮
populateBtn.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
if (changedData == true) {
ArrayAdapter<String> adapter
= new ArrayAdapter<String>(yourActivity.this,
android.R.layout.simple_list_item_multiple_choice,
differentData);
listView.setAdapter(adapter);
changedData = false;
}else if (changedData == false) {
ArrayAdapter<String> adapter
= new ArrayAdapter<String>(yourActivity.this,
android.R.layout.simple_list_item_1,
yourData);
listView.setAdapter(adapter);
changedData = true;
}
});
}
这样,当您第一次点击按钮时,您会收到ListView
CheckBox
的新数据
再次点击该按钮后,它将返回ListView
,但没有CheckBox
旧数据
如果您想使CheckBox
可检查,请阅读此链接中的答案