Привет всем, у меня есть проблема.
Я сделал тест для обучения созданию простого пользовательского списка с чекбоксами, и я делаю этот код:
XML CODEROW
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent" android:layout_width="fill_parent">
<TextView
android:id="@+id/maggiore"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge" />
<TextView
android:id="@+id/minore"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/maggiore"
android:text="Small Text"
android:textAppearance="?android:attr/textAppearanceSmall" />
<CheckBox
android:id="@+id/checkBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:focusable="false"
android:text="" />
</RelativeLayout>
JAVA CODE
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.custommain);
final ListView listview = (ListView) findViewById(R.id.listView);
final ArrayList<String> nomiList=new ArrayList<String>();
SQLiteDatabase myDb = openOrCreateDatabase("listaspesa_database",0,null);
Cursor c = myDb.rawQuery("SELECT * FROM liste ORDER BY id ", null);
int nomeListaId = c.getColumnIndex("nome_lista");
while(c.moveToNext()){
String nomeLista = c.getString(nomeListaId);
nomiList.add(nomeLista);
}
final ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, R.layout.row_main, R.id.maggiore, nomiList) {
public View getView(int position, View convertView, ViewGroup parent) {
View adapterView = super.getView(position, convertView, parent);
String item = nomiList.get(position);
TextView textItem = (TextView)adapterView.findViewById(R.id.minore);
checkBox = (CheckBox)adapterView.findViewWithTag(R.id.checkBox);
SQLiteDatabase myDb = openOrCreateDatabase("listaspesa_database",0,null);
Cursor c = myDb.rawQuery("SELECT * FROM liste WHERE nome_lista='"+item+"' ", null);
int nomeListaId = c.getColumnIndex("luogo_lista");
while(c.moveToNext()){
String nomeLista = c.getString(nomeListaId);
textItem.setText(nomeLista);
}
listview.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int position, long id) {
checkBox.toggle();
}
});
return adapterView;
}
};
listview.setAdapter(arrayAdapter);
listview.setOnItemLongClickListener(new OnItemLongClickListener(){
@Override
public boolean onItemLongClick(AdapterView<?> arg0, View arg1, int arg2, long id) {
String daEliminare = nomiList.get((int) id);
arrayAdapter.remove(daEliminare);
return false;
}
});
}
}
Но когда я нажимаю на список, последнийфлажок, а не ответчик.
Почему ??Спасибо (извините за английский, но я не англичанин и мне только 15:))