Можно ли найти представление по его имени, а не по его идентификатору.
findViewById(R.id.someView);
но я хотел бы сделать что-то вроде этого:
findViewByName("someView");
Ответ 1
вам нужно найти представления по идентификатору при работе с xml, но вы можете найти идентификатор с помощью getIdentifier (String name,...), который полезен если у вас есть ваши макеты, пронумерованные, например. Просто имейте в виду, что такой поиск относительно дорог.
, чтобы выполнить ответ
int id = getResources().getIdentifier(name, "id", context.getPackageName());
View view = findViewById(id);
Ответ 2
Да, мы можем найти любые статические ресурсы по имени.
int id = getResources().getIdentifier(name, "id", context.getPackageName());
View view;
if(id != 0) {
view = findViewById(id);
}
getResources(). Идентификатор всегда будет возвращать 0, если ресурс не найден или имя не совпадает.
Ответ 3
Нет, таких методов нет. Мне любопытно, почему вам нужен такой метод.