Как я могу увидеть xml DrawerLayout файл в андроид студии

Я создаю файл макета ящика XML на Android Studio, но не могу превью на Android Studio получаю эту ошибку, как я могу решить проблему

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">


<LinearLayout
    android:fitsSystemWindows="true"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="#ff6600"
    android:paddingRight="@dimen/activity_horizontal_margin"

    tools:context="br.com.appingles.Tela2" >

    <include android:id="@+id/app_bar" layout="@layout/app_bar"/>

    <TextView
        android:id="@+id/assertosTela2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="30dp"
        android:layout_marginTop="20dp"
        android:text="TextView" />

    <TextView
        android:id="@+id/perguntaTela2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="28dp"
        android:text="TextView" />

    <Button
        android:id="@+id/button2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="35dp"
        android:onClick="button2"
        android:text="Button2" />

    <Button
        android:id="@+id/button3"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="27dp"
        android:onClick="button3"
        android:text="Button3" />

    <Button
        android:id="@+id/button4"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="25dp"
        android:onClick="button4"
        android:text="Button4" />

    <Button
        android:id="@+id/button1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="58dp"
        android:onClick="button1"
        android:text="Button1" />

</LinearLayout>

<fragment
    android:id="@+id/fragment_navigation_drawer"
    android:layout_width="@dimen/nav_dr"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    app:layout="@layout/fragment_navigation_drawer"
    android:name="br.com.appingles.NavigationDrawerFragment"
    tools:layout="@layout/fragment_navigation_drawer"
    />

android {
compileSdkVersion 22
buildToolsVersion '19.1.0'

defaultConfig {
    applicationId "br.com.appingles"
    minSdkVersion 17
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:support-v4:22.1.1'
compile 'com.android.support:appcompat-v7:22.1.1'
compile 'com.android.support:recyclerview-v7:22.1.1'

}

Я получаю эту ошибку:

Проблемы с рендерингом Следующие классы не могут быть найдены:android.support.v4.widget.Drawer Layout (Fix Build Path, Create Class) Совет. Попробуйте создать проект.

1 ответ

Родитель (самый верхний элемент) вашего layout.xml должно быть android.support.v4.widget.DrawerLayout как это:

<android.support.v4.widget.DrawerLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#000"
    tools:context="mainMenu.MainExpandActivity">

Если все в порядке и если он все еще не показывает предварительный просмотр, то скомпилируйте и соберите свой проект, а затем попробуйте.

Согласно странице разработчика Android

Основное представление содержимого (FrameLayout выше) должно быть первым дочерним элементом в DrawerLayout, поскольку порядок XML подразумевает z-упорядочение, а ящик должен быть поверх содержимого.


РЕДАКТИРОВАТЬ

Прежде всего, вам нужно добавить External Jar

В андроид студии зайдите в Файл-> Структура проекта -> Модули -> Зависимости -> + символ -> Зависимость библиотеки.

Теперь ищите поддержку библиотеки. вы найдете что-то вроде этого com.android.support:support-v13

Теперь выберите файл JAR с именем support-v13 (независимо от версии) и нажмите OK.

РЕДАКТИРОВАТЬ № 2

Палитра не отображала ваш DrawerLayout мгновенно. На самом деле, это нормальное поведение. В конце концов, палитра отображает только статические монослои, а DrawerLayout это сложный ViewGroup и он имеет многоуровневую структуру: ящик и содержимое. В то же время, DrawerLayout динамический вид, эффекты которого можно увидеть только на устройстве или в симуляторе Так что не стесняйтесь запустить свой Activity который загружает этот макет, и вы увидите эффект вашего макета, который содержит ваш DrawerLayout

Другие вопросы по тегам