Android - данные присоединения к представлениям

В моем приложении я создаю динамические строки в таблице как в этом учебном руководстве: http://en.androidwiki.com/wiki/Dynamically_adding_rows_to_TableLayout

 for(int i = startDay; i < startDay + 7; i++){

      /* Create a TextView to be the row-content. */
      TextView day = new TextView(this);
      day.setText(Integer.toString(i));
      day.setLayoutParams(new LayoutParams(
                LayoutParams.FILL_PARENT,
                LayoutParams.WRAP_CONTENT));

      day.setOnClickListener(new OnClickListener() {
          @Override
          public void onClick(View v) {
              Log.i("Listener: ", "Click");
          }

Таким образом, теперь, когда я нажимаю на TextView I, регистр может нажать событие, но как я определяю, который был нажат TextView?

Не только объект, который я получаю с событием, но и данными, как которые было нажато дневное число?

Идеально я хотел бы присоединить данные к каждому представлению, которое я создаю динамично. Что-то как данные () метод в JavaScript jQuery.

Прямо сейчас я вижу только 1 способ решить это - в то время как создание TextView добавляет идентификатор с данными и при нажатии - возвращают идентификатор и анализируют его для получения моих данных. Но это кажется мне ужасным подходом.

Существует ли способ присоединить произвольные данные к представлениям андроида?

30
задан Leonti 22 April 2010 в 21:31
поделиться

1 ответ

Нашел ответ, просматривая методы. Может кому будет полезно.

Мне понадобились следующие методы:

setTag () и getTag ()

http://developer.android.com/reference/android/view/View.html#setTag%28java.lang.Object%29.

57
ответ дан 27 November 2019 в 23:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: