Нажмите кнопку в моем списке базы данных - PullRequest
0 голосов
/ 31 января 2012

У меня есть список с данными из моей базы данных.Я хочу, чтобы в каждом элементе списка была кнопка, которая удалит этот элемент из базы данных.Вот как я получаю данные из БД и представляю их в виде списка:

 DB entry=new DB(this); 

       entry.open();  

       Cursor cursor = entry.getData();
       startManagingCursor(cursor);

       ListView list=(ListView)findViewById(R.id.list);

       String[] columns = new String[] { DBHelper.NAME, DBHelper.SURNAME};

       int[] to = new int[] { R.id.textView01,R.id.textView02};  

       SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(this, R.layout.row, cursor, columns, to);

       list.setAdapter(mAdapter);

       entry.close();  

Итак, моя проблема заключается в следующем: Как создать нажимаемую кнопку в каждом элементе списка

РЕДАКТИРОВАТЬ:это адаптер, который я создал:

public class myAdapter extends BaseAdapter {
    private Context mContext;

    final Drawable delete_btn;
    private ImageButton imageButton;

    private LayoutInflater inflater;

    private List<ITEMS> items = new ArrayList<ITEMS>();

    public myAdapter(Context ctx) {

        mContext = ctx;
        inflater = LayoutInflater.from(mContext);

        delete_btn = ctx.getResources()
                .getDrawable(R.drawable.delete_btn);
    }

    public View getView(final int position, View convertView, ViewGroup parent) {

        View btv = null;
        try {
            btv = inflater.inflate(R.layout.row, null);

            TextView name = (TextView) btv.findViewById(R.id.textView01);
            name.setText(DBHelper.NAME);


            TextView surname = (TextView) btv.findViewById(R.id.textView02);
            surname.setText(DBHelper.SURNAME);

            imageButton = (ImageButton) btv.findViewById(R.id.delete_btn);
            imageButton.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub

            Toast.makeText(mContext, "Button pressed", Toast.LENGTH_LONG).show();



                }
            });

        } catch (Exception e) {
            e.printStackTrace();
        }
        return btv;
    }

    public void addItem(ITEM it) {
        items.add(it);
    }

    public void setListItems(List<ITEM> lit) {
        items = lit;
    }

    @Override
    public int getCount() {
        return items.size();
    }

    @Override
    public Object getItem(int arg0) {
        return items.get(arg0);
    }

    @Override
    public long getItemId(int arg0) {
        return arg0;
    }

}

1 Ответ

1 голос
/ 31 января 2012

создайте свой собственный CustomCursorAdapter вместо SimpleCursorAdapter. Вот пример

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...