現在、私は自分のIDでチェックボックスIDを設定しているBaseAdapterから、私のリストビューにチェックボックスを持っています。 私はアクティビティからこのIDにアクセスします。私はnullポインタの例外を取得ですか?私はまだ私はそのnullポインタの例外があるデバッグ?チェックボックスの問題をクリックしました
チェックボックスのIDを手動で設定することはできません。チェックボックスにはメソッド setId(int id)があります。
checkBox.getId()でnullポインタ例外が発生しましたか? これは私のgetView()で、私はcheckBox idを設定しています。
私がチェックしたCheckBoxをすべて削除する必要があるため、私はこれを行っています。
private void deleteCheckItems() {
SparseBooleanArray booleanArray = listView.getCheckedItemPositions();
for (int i = 0; i < listView.getCount(); i++) {
if (booleanArray.get(i))
Toast.makeText(getBaseContext(), " the selected index is " + i, Toast.LENGTH_SHORT).show();
}
}
私は、このメソッドからnullポインタ例外を取得しています
は編集:私のソースコードとして次のとおりです。
public View getView(int position, View view, ViewGroup parent){
ViewHolder viewHolder;
if(view==null){
viewHolder = new ViewHolder();
view = layoutInfalter.inflate(R.layout.item_row,null);
viewHolder.checkBox = (CheckBox)view.findViewById(R.id.CheckBoxId);
if(VIEW_MODE==-1){
viewHolder.checkBox.setVisibility(View.INVISIBLE);
}else{
myAdapter.setViewMode(1);
viewHolder.checkBox.setVisibility(View.VISIBLE);
viewHolder.checkBox.setId(myList.get(position).getId());
}
viewHolder.text1= (TextView)view.findViewById(R.id.text1);
viewHolder.text2 =TextView)view.findViewById(R.id.text2);
view.setTag(viewHolder);
}else{
viewHolder = (ViewHolder)view.getTag();
}
viewHolder.text1.setText(myList.get(position).getText1());
viewHolder.text2.setText(myList.get(position).getText2());
//viewHolder.checkBox.setId(myList.get(position).getId());
return view;
}
シャーを掲載していませんか? –
は回線番号を取得できます。どこでエラーが発生していますか? –
エラーはdeleteCheckItem()メソッドにあります。私のトーストは、それがヌル値を得るので、表示されません。 – Robin