button.setId (целочисленное значение) дает мне ошибку просмотра - PullRequest
0 голосов
/ 27 ноября 2010

Привет всем, я реализовал свой настроенный simpleCursorAdapter, и его представление слилось с другим представлением, чтобы создать желаемую страницу, но когда я пытаюсь установить идентификатор для каждой кнопки записи представления моего списка, это приводит к ошибке просмотра

Половина логики по этой ссылке:

http://thinkandroid.wordpress.com/2010/01/09/simplecursoradapters-and-listviews/

и другие части кода моего пользовательского представления приведены ниже:

public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);    
        setContentView(R.layout.fr1);


        Cursor c = getContentResolver().query(People.CONTENT_URI,
                null, null, null, null);
                startManagingCursor(c);
                String[] cols = new String[]{People.NAME};
                int[] names = new int[]{R.id.FriendsName};

        SimpleCursorAdapter rows = new MyAdapter(this,R.layout.flistview,c,cols,names);
        setListAdapter(rows);           
    }

public class MyAdapter extends SimpleCursorAdapter{

        public DisplayFriendsAdapter(Context context, int layout, Cursor c, String[] from, int[] to) {
            super(context, layout, c, from, to);
        }

        public View getView(int position, View convertView, ViewGroup parent){
            View view = super.getView(position, convertView, parent);
            ImageButton Btn1 = (ImageButton)view.findViewById(R.id.Button1);
            Btn1.setId(position);
            ImageButton Btn2 = (ImageButton)view.findViewById(R.id.Button2);
            Btn2.setId(position);
            Btn1.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) {
                    Log.i("Accepted", "clicked"+v.getId());

                }
            }); 

            Btn2.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) {


                }
            }); 
            return view;
        }
    }

1 Ответ

0 голосов
/ 27 ноября 2010

Нет необходимости устанавливать идентификатор кнопки. Его идентификатор уже определен в XML для пользовательского интерфейса и помещен как константа в R.java как R.id.Button1. Просто удалите эти .setID(...) строки кода.

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