我有一个列表适配器,这是我的getView
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null){
convertView= myInflater.inflate(R.layout.index, null);
holder= new ViewHolder();
holder.textView= (TextView)convertView.findViewById(R.id.empty);
holder.checkBox= (CheckBox) convertView.findViewById(R.id.Check);
convertView.setTag(holder);
}else{
holder=(ViewHolder)convertView.getTag();
}
holder.textView.setText(lista.get(position));
return convertView;
}
并且在我的这个活动的xml文件中,我让Checkbox不可见...因为当我按下底部时我希望在我的列表中显示所有复选框,我这样做...
public boolean onOptionsItemSelected( MenuItem item){
checkButton= (CheckBox) findViewById(R.id.Check);
if (item.getItemId()== 2){
for (int i =0; i< myAdapter.getCount(); i++){
//myAdapter.getItemId(i);
checkButton.setVisibility(View.VISIBLE);
}
但是这只会在列表顶部出现一个checkBox,而不会出现在列表的其他元素中...如何解决这个问题?
提前致谢
答案 0 :(得分:0)
使用
listview.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
if(//ur condition)
{
view.findViewById(R.id.Check).setVisibility(CheckBox.VISIBLE);
}
//ur method
}