Olá pessoal!
Estou fazendo uma lista de itens com checkedtextview. Quando eu clica na linha eu tenho que tagear o checkedtextview para apenas checkar aquele correspondente ao id do item. Só que dá erro de:
ERROR/AndroidRuntime(11952): java.lang.ClassCastException: android.widget.LinearLayout
Na linha final Long item = (Long) check.getTag();
veja parte do código:
@Override
public void onListItemClick (ListView l, View v, int position, long id) {
db.open();
cursor = db.getCursor();
cursor.moveToPosition(position);
inf.setPosition(position);
inf.setNumeroPedido(numeroPedido);//começa com 1
inf.setNomeItem(cursor.getString(cursor.getColumnIndex(DBAdapterV4.COLUNA_DESCRICAO_ITEM)));
inf.setIdItem(cursor.getInt(cursor.getColumnIndex(DBAdapterV4.COLUNA_ID_ITEM)));
inf.setValor(cursor.getInt(cursor.getColumnIndex(DBAdapterV4.COLUNA_VALOR_ITEM)));
db.inserirPedido(inf.getNumeroPedido(), inf.getIdCliente(), inf.getIdItem(), inf.getValor());
check = (CheckedTextView) findViewById(android.R.id.text1);
//check.setTag(inf.getIdItem());
check.setTag(inf.getIdItem());
final Long item = (Long) check.getTag();
((CheckedTextView) v).setChecked(cursor.getInt(cursor.getColumnIndex(DBAdapterV4.COLUNA_ID_ITEM)) == item ? true:false);
Log.i(CATEGORIA, " Selecionado = " + item);
Log.i(CATEGORIA, " Posição na Lista = " + position + " Posição no banco = " + inf.getIdItem() + " CheckedTextView = " +check.getTag());
Toast.makeText(this, "Você selecionou: " + inf.getNomeItem(), Toast.LENGTH_SHORT).show();
db.close(); cursor.close();
}
Alguém pode me ajudar?