我创建了一个修改过的ListView,以便在屏幕上显示各种信息。现在,我想对用户点击的视图执行单独操作,例如使其不可见。
我尝试了一些东西,但似乎没有正常工作。它使4个视图中的每个视图都不可见,而不仅仅是1个。
public class affichageListViewAdapter extends BaseAdapter {
public void actionC(){
ListListView.get(0).test();
}
// some more code ...
}
public class affichageListView extends LinearLayout {
// some more code ...
public void test(){
textViewTest.setVisibility(GONE);
}
}
public class listeVideo extends ListFragment{
private affichageListViewAdapter adapter;
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
adapter.test();
}
}
public class affichageListView extends LinearLayout {
private TextView mTextView;
public affichageListView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
init();
}
public affichageListView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public affichageListView(Context context) {
super(context);
init();
}
private void init() {
inflate(getContext(), R.layout.affichafe_list_view, this);
mTextView = (TextView) findViewById(R.id.textViewTitre);
}
}
答案 0 :(得分:1)
我的目的是你的适配器中应该有一个boolean数组元素。然后,在适配器中添加此方法:
public void hideItem(int position){
positionsToShow.get(position) = false;
notifyDataSetChanged();
}
public void showItem(int position){
positionsToShow.get(position) = true;
notifyDataSetChanged();
}
在你的getView中你应该放:
if(!positionsToShow.get(position)){
//textView.setVisibility(View.INVISIBLE);
}