Задать вопрос
@DenisE34

Как назначить id элементам списка?

Хочу, что бы при нажатии на элемент списка открывалась новая активити.
Список формируется так:
for (int i = 0; i < name.length; i++) {
      Log.d("myLogs", "i = " + i);
      View item = ltInflater.inflate(R.layout.item, linLayout, false);
      TextView tvName = (TextView) item.findViewById(R.id.tvName);
      tvName.setText(name[i]);
      TextView tvPosition = (TextView) item.findViewById(R.id.tvPosition);
      tvPosition.setText("Должность: " + position[i]);
      TextView tvSalary = (TextView) item.findViewById(R.id.tvSalary);
      tvSalary.setText("Оклад: " + String.valueOf(salary[i]));
      item.getLayoutParams().width = LayoutParams.MATCH_PARENT;
      item.setId(i+1);
      item.setOnClickListener(this);
      item.setBackgroundColor(colors[i % 2]);
      linLayout.addView(item);
    }
public void onClick(View v) {
    switch (v.getId()) {
    case R.id.1:
      Intent intent = new Intent(this, ActivityTwo.class);
  startActivity(intent);
      break;
    default:
      break;
    }
  }

Получается, что первому TextView присвоен id 1. Но, idea говорит, что в строке case R.id.1: ошибка. Хотя, код рабочий. Если вместо 1 поставить другой id, назначенный вручную, ане в цикле, то все работает. Id так же назначаются, пробовал их выводить через println() - все работает. Так как же отработать нажатие по id?
  • Вопрос задан
  • 284 просмотра
Подписаться 1 Оценить 2 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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