Подтвердить что ты не робот

Что такое "android.R.id.text1"?

Я новичок в разработке Android. В образце "Блокнот" я увидел следующий фрагмент кода:

SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.noteslist_item, cursor,
        new String[] { Notes.TITLE }, new int[] { android.R.id.text1 });

и в файле notelist_item.xml:

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/text1"   <-----------HERE
    android:layout_width="fill_parent"
    android:layout_height="?android:attr/listPreferredItemHeight"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:gravity="center_vertical"
    android:paddingLeft="5dip"
    android:singleLine="true"
/>

Итак, мне интересно, что это за android.R.id.text1?

Кроме того, я нашел android.R.id.button1, button2, button3 в файле android.jar.

Являются ли они некоторыми известными идентификаторами для некоторых сторонних элементов управления?

Спасибо

4b9b3361

Ответ 1

В платформе Android Java android.R.id.text1 является идентификатором TextView. Вы можете найти его во многих макетах из фреймворка (select_dialog_item, select_dialog_singlechoice, simple_dropdown_item_1line и т.д.). В Android-среде xml она представлена ​​@+id/text1

Следовательно, если вы используете один из этих макетов и хотите изменить текст, вам нужно будет использовать этот идентификатор.

#probably in a custom ListAdapter that uses 
View view = inflater.inflate(android.R.layout.simple_list_item_1, parent, false);
TextView textView = (textView) view.findViewById(android.R.id.text1);
textView.setText("Oh no! not hello world again");

Кроме того, вы можете использовать этот же идентификатор, чтобы идентифицировать TextView (или что-нибудь, но это вводит в заблуждение) в ваших настраиваемых макетах. См. Образец "Блокнот", файл макета noteslist_item.xml.

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:textAppearance="?android:attr/textAppearanceLarge"
android:gravity="center_vertical"
android:paddingLeft="5dip"
android:singleLine="true"  
/>

Ответ 2

Это идентификатор вида встроенного макета (android.R.layout.simple_list_item_1), используемый для списков по умолчанию и т.д.

Ответ 3

android.R.id.text1 - это идентификатор TextView, определенный в предопределенном макете android android.layout.simple_list_item1. поэтому он точно так же дает идентификатор, который уже описан, а не дает новый идентификатор.

Ответ 4

android.R.id.text1 - это TextView в макете (android.R.layout.simple_list_item_1) вы можете увидеть это в

(путь к SD SDK для Android)\platform\android-\data\res\layout

Папка

Ответ 5

android.R.id.text1 - это идентификатор TextView, который определен в notelist_item.xml. Вы можете найти и использовать виджет по его идентификатору.

Ответ 6

Часть text1 (и другие кнопки) являются ссылкой для вашего java-кода на textView, определенный в вашем layout.xml. остальная часть этого Android.R.id сообщает код, чтобы найти ресурс Android с идентификатором "text1", например.

Ответ 7

android.R.id.Text1 - это фактически id simple_dropdown_item_1line в андроиде если вы нажмете simple_dropdown_item_1line с помощью ctrl + touchpad (если используете ноутбук), вы увидите, что есть идентификатор simple_dropdown_item_1line, который вы используете тот же текст1 в xmlfile дать свои стили в вашем xml файле, тогда вы легко запустите его