Хочу, что бы при нажатии на элемент списка открывалась новая активити.
Список формируется так:
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?