Здравствуйте, мне нужно быстро кодировать, получая строку из идентификатора определенного идентификатора.
Например, идентификаторы моих трех Textviews: R.id.tv1, R.id.tv2, R.id.tv3.
Я хочу получить строку или символ из «tv1», в основном «1», чтобы упростить кодирование и ускорить его.
Как мне этого добиться? Получение getId() просто возвращает целое число идентификатора, но мне действительно нужна строка.
Спасибо за помощь.
Возможно, я неправильно понял вопрос... Если вы имели в виду, что хотите вызвать TextView.getText() проще, то вам сначала нужен экземпляр TextView... И вы можете использовать ButterKnife или просто использовать findViewById, но "кодирование быстрее" это все равно количество шаги




На самом деле вы можете создать функцию для преобразования вашего идентификатора в строку, например
public String getCorrespondingString (int resId ) {
switch(resId){
case R.id.tv1: return "1";
case R.id.tv2: return "2";
case R.id.tv3: return "3";
}
}
Зачем писать переключатель? Просто сделайте getResources().getString(resourceId), и вы сможете получить все строки для всего приложения
Он не вернет, какой вопрос хочет владелец вопроса, дважды подумайте, прежде чем голосовать против
Я чувствую, что вопрос спрашивал, как проще вызвать getText() (фактический текст в представлении с этими идентификаторами)
это сработало и отвечает на то, что я хотел. Спасибо!
Тогда проголосуйте за ответ, добро пожаловать
Как насчет управления TextViews в массиве с индексом?