В настоящее время я стараюсь использовать разные идентификаторы для каждого виджета, но если бы я использовал один и тот же идентификатор для некоторых виджетов в разных XML-файлах макета, что бы случилось с моими вызовами findViewById? Будет ли запутанным и вернуть виджет из неправильного файла макета?Что произойдет, если я использую один и тот же идентификатор для нескольких виджетов в разных макетах?
Я спрашиваю, потому что я думал о включении представления (с рядом кнопок) в некоторых других представлениях, тогда каждый из этих экранных классов должен был бы придать каждой кнопке на включенном представлении несколько другое поведение. Но для этого они будут вызывать findViewById на одном и том же идентификаторе. К примеру в настоящее время я, как это в каждом файле:
final ImageButton homeButton = (ImageButton)this.findViewById(R.id.rshome_button);
homeButton.setOnClickListener(new BottomButtonClickListener());
final ImageButton hotButton = (ImageButton)this.findViewById(R.id.rshotlist_button);
hotButton.setOnClickListener(new BottomButtonClickListener());
final ImageButton locButton = (ImageButton)this.findViewById(R.id.rsbot_map);
locButton.setOnClickListener(new BottomButtonClickListener());
final ImageButton sendButton = (ImageButton)this.findViewById(R.id.rssend_button);
sendButton.setOnClickListener(new BottomButtonClickListener());
Но изменить R.id в каждом файле, чтобы указать на виджет в каждом assiciated макете. было бы неплохо, если бы я мог использовать один Rid для всех, поэтому мне не нужно настраивать каждый файл макета и каждый класс экрана.
Благодаря
Итак, как он знает, какой из них мы ищем? – GMsoF