@ не отображается при создании списка - PullRequest
0 голосов
/ 19 сентября 2018

При перетаскивании в дизайне для создания представления списка единственным кодом, созданным в моем xml, был:

<ListView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

Нет android:id="@id/example"/.Мне нужно вызвать его для моего класса фрагмента

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.fragment_details, container, false);

    String[] menuItems={"Example1","Example2","Example3"};

    ListView listView = (ListView)view.findViewById(R.id.example);


    return view;
}

Я не могу вызвать свой ListView, потому что Android Studio не позволяет мне создать идентификатор для него.Я получаю следующую ошибку при написании кода в Не удается разрешить символ '@ id / example', проверяет ссылки на ресурсы в файлах Android XML

Чего мне не хватает?

Ответы [ 2 ]

0 голосов
/ 19 сентября 2018

ID

Любой объект View может иметь целочисленный идентификатор, связанный с ним, чтобы однозначно идентифицировать View в дереве.Когда приложение компилируется, этот идентификатор упоминается как целое число, но идентификатор обычно назначается в XML-файле макета в виде строки в атрибуте id.Это атрибут XML, общий для всех объектов View (определяется классом View), и вы будете использовать его очень часто.Синтаксис для идентификатора внутри тега XML:

android:id="@+id/example"

Символ at (@) в начале строки указывает, что синтаксический анализатор XML должен анализировать и расширятьОстальная часть строки идентификатора и идентифицировать его как ресурс идентификатора.Знак плюс (+) означает, что это новое имя ресурса, которое необходимо создать и добавить в наши ресурсы (в файле R.java).Существует ряд других ресурсов ID, предлагаемых платформой Android.При обращении к идентификатору ресурса Android вам не нужен символ плюс, но вы должны добавить пространство имен пакета Android, например:

android:id="@android:id/example"

С установленным пространством имен пакета Android,теперь мы ссылаемся на идентификатор из класса ресурсов android.R, а не из класса локальных ресурсов.

0 голосов
/ 19 сентября 2018

Если это новый идентификатор, вам нужно добавить к нему +:

android:id="@+id/text"

См. Документацию по Android: https://developer.android.com/guide/topics/ui/declaring-layout#write

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...