#android #android-layout #android-activity #android-studio
#Android #android-layout #android-активность #android-studio
Вопрос:
Я пытаюсь создать простое приложение с двумя кнопками, текстовым полем и двумя линейными макетами для практики. Я пытаюсь создать идентификаторы ресурсов для кнопок. Вот мой activity xml (activity_quiz.xml ):
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="24dp"
android:text="@string/question_text" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@ id/true_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/true_button" />
<Button
android:id="@ id/false_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/false_button"/>
</LinearLayout>
Проблема в том, что в примере, который я показываю, говорится, что вы должны видеть эти идентификаторы в R.id но я их там не вижу. Вот класс внутреннего идентификатора из R.java:
public static final class id {
public static final int action_bar=0x7f07001c;
public static final int action_bar_activity_content=0x7f070014;
public static final int action_bar_container=0x7f07001b;
public static final int action_bar_overlay_layout=0x7f07001f;
public static final int action_bar_root=0x7f07001a;
public static final int action_bar_subtitle=0x7f070023;
public static final int action_bar_title=0x7f070022;
public static final int action_context_bar=0x7f07001d;
public static final int action_menu_divider=0x7f070015;
public static final int action_menu_presenter=0x7f070016;
public static final int action_mode_close_button=0x7f070024;
public static final int action_settings=0x7f07003c;
public static final int activity_chooser_view_content=0x7f070025;
public static final int always=0x7f07000f;
public static final int beginning=0x7f07000a;
public static final int checkbox=0x7f07002d;
public static final int collapseActionView=0x7f070011;
public static final int default_activity_button=0x7f070028;
public static final int dialog=0x7f070012;
public static final int disableHome=0x7f070008;
public static final int dropdown=0x7f070013;
public static final int edit_query=0x7f070030;
public static final int end=0x7f07000c;
public static final int expand_activities_button=0x7f070026;
public static final int expanded_menu=0x7f07002c;
public static final int home=0x7f070017;
public static final int homeAsUp=0x7f070005;
public static final int icon=0x7f07002a;
public static final int ifRoom=0x7f07000e;
public static final int image=0x7f070027;
public static final int listMode=0x7f070001;
public static final int list_item=0x7f070029;
public static final int middle=0x7f07000b;
public static final int never=0x7f07000d;
public static final int none=0x7f070009;
public static final int normal=0x7f070000;
public static final int progress_circular=0x7f070018;
public static final int progress_horizontal=0x7f070019;
public static final int radio=0x7f07002f;
public static final int search_badge=0x7f070032;
public static final int search_bar=0x7f070031;
public static final int search_button=0x7f070033;
public static final int search_close_btn=0x7f070038;
public static final int search_edit_frame=0x7f070034;
public static final int search_go_btn=0x7f07003a;
public static final int search_mag_icon=0x7f070035;
public static final int search_plate=0x7f070036;
public static final int search_src_text=0x7f070037;
public static final int search_voice_btn=0x7f07003b;
public static final int shortcut=0x7f07002e;
public static final int showCustom=0x7f070007;
public static final int showHome=0x7f070004;
public static final int showTitle=0x7f070006;
public static final int split_action_bar=0x7f07001e;
public static final int submit_area=0x7f070039;
public static final int tabMode=0x7f070002;
public static final int title=0x7f07002b;
public static final int top_action_bar=0x7f070020;
public static final int up=0x7f070021;
public static final int useLogo=0x7f070003;
public static final int withText=0x7f070010;
}
Я использую Android Studio и отредактировал activity xml в версии 23 и только что обновлен до версии 23.0.1. Если есть какая-либо другая информация, которая может помочь, пожалуйста, дайте мне знать.
Ответ №1:
Похоже, что ваши имена идентификаторов ресурсов «true_button» и «false_button», однако я бы не стал искать для них класс R, поскольку он автоматически генерируется при каждом создании проекта. Я бы рекомендовал очистить ваш проект и перестроить, который должен сгенерировать новый класс R для вашего проекта и добавить эти идентификаторы в класс R.
Я также рекомендую Eclipse с плагином ADT, но я понимаю, подходит ли вам Android Studio. Я надеюсь, что это поможет, я сталкивался с этой проблемой раньше и читал об этом в нескольких книгах.
Комментарии:
1. Спасибо, я попробую это. Обычно я использую eclipse для других проектов Java, но я новичок в Android, и у Android Studio не было тех же проблем, что у eclipse adt bundle с rev 23. Вероятно, я снова попробую eclipse, поскольку версия 23.0.1 вышла.
2. Нет проблем. Я несколько раз сталкивался с этой проблемой, и мне приходилось повторять свои шаги. По иронии судьбы, недавно я решил взять книгу, в которой упоминается это в первой главе, в которой многие книги никогда не затрагивают эту тему. Android на практике, опубликованный Manning. Я настоятельно рекомендую это.