Android Studio, DrawerLayout делает вид дизайна пустым

Я новичок в разработке Android, так что извините, если я задам несколько глупых вопросов, но я действительно не могу понять, почему всякий раз, когда я переключаюсь с относительного макета или линейного на DrawerLayout, мое представление дизайна становится пустым и только говорит: «android .... DrawerLayout ".i теряют все текстовые поля кнопок, все это исчезает! Я добавил все зависимости, необходимые для его использования. Все, что мне нужно в этом макете ящика, - это добавить вид навигации на мой главный экран. Я пробовал, но он по-прежнему ничего не отображается в представлении дизайна, поэтому я не могу правильно разложить вещи, не видя, как это будет выглядеть! Любая помощь будет очень признательна!

введите описание изображения здесь

<?xml version = "1.0" encoding = "utf-8"?>
<!-- Use DrawerLayout as root container for activity -->
<android.support.v4.widget.DrawerLayout xmlns:android = "http://schemas.android.com/apk/res/android"
    xmlns:app = "http://schemas.android.com/apk/res-auto"
    xmlns:tools = "http://schemas.android.com/tools"
    android:id = "@+id/drawer_layout"
    android:layout_width = "match_parent"
    android:fitsSystemWindows = "true"
    android:layout_height = "match_parent">

    <!-- Layout to contain contents of main body of screen (drawer will slide over this) -->


    <LinearLayout
        android:layout_width = "match_parent"
        android:layout_height = "match_parent"
        android:orientation = "vertical">
        <android.support.v7.widget.CardView
            android:id = "@+id/cardView"
            android:layout_width = "wrap_content"
            android:layout_height = "wrap_content"
            android:backgroundTint = "#CC809fff"

            android:padding = "10dp">


            <ImageView
                android:id = "@+id/weatherView"
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content"
                android:adjustViewBounds = "true"
                android:clickable = "false"
                android:contextClickable = "true"
                android:padding = "10dp"
                android:src = "@drawable/weather" />

            <View
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content"
                android:backgroundTint = "@color/cardview_dark_background"
                android:padding = "11dp"
                android:visibility = "visible" />


            <TextView
                android:id = "@+id/textView4"
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content"
                android:gravity = "center"
                android:padding = "0dp"
                android:text = "Weather"
                android:textColor = "@android:color/white"
                android:textSize = "20dp"
                android:textStyle = "bold" />


        </android.support.v7.widget.CardView>

        <android.support.v7.widget.CardView
            android:id = "@+id/cardView2"
            android:layout_width = "wrap_content"
            android:layout_height = "wrap_content"
            android:backgroundTint = "#CC809fff"

            android:padding = "10dp">


            <ImageView
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content"
                android:padding = "10dp"
                android:src = "@drawable/news" />

            <View
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content"
                android:outlineAmbientShadowColor = "#ff3300
"
                android:visibility = "visible">

            </View>

            <TextView
                android:id = "@+id/textview5"
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content"
                android:gravity = "center"
                android:padding = "0dp"
                android:text = "News"
                android:textColor = "#ffffff"
                android:textSize = "20dp"
                android:textStyle = "bold" />


        </android.support.v7.widget.CardView>


        <android.support.v7.widget.CardView
            android:id = "@+id/cardView3"
            android:layout_width = "wrap_content"
            android:layout_height = "wrap_content"
            android:backgroundTint = "#CC000000"
            android:padding = "5dp">


            <ImageView
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content"
                android:padding = "3dp"
                android:src = "@drawable/events_icon" />

            <View
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content">

            </View>

            <TextView
                android:id = "@+id/eventsTextfield"
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content"
                android:gravity = "center"
                android:padding = "10dp"
                android:text = "Events"
                android:textColor = "@color/cardview_light_background"
                android:textSize = "20dp"
                android:textStyle = "bold" />


        </android.support.v7.widget.CardView>

        <android.support.v7.widget.CardView
            android:id = "@+id/cardView4"
            android:layout_width = "wrap_content"
            android:layout_height = "wrap_content"
            android:backgroundTint = "#CC000000"
            android:padding = "5dp">


            <ImageView
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content"
                android:padding = "5dp"
                android:src = "@drawable/trending_icon" />

            <View
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content">

            </View>

            <TextView
                android:id = "@+id/secondview"
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content"
                android:gravity = "center"
                android:padding = "10dp"
                android:text = "Hottest"
                android:textColor = "@color/cardview_light_background"
                android:textSize = "20dp"
                android:textStyle = "bold" />


        </android.support.v7.widget.CardView>
    </LinearLayout>



    <!-- Container for contents of drawer - use NavigationView to make configuration easier -->
    <android.support.design.widget.NavigationView
        android:id = "@+id/nav_view"
        android:layout_width = "wrap_content"
        android:layout_height = "wrap_content"
        android:fitsSystemWindows = "true"
        app:menu = "@menu/drawer_view" />


</android.support.v4.widget.DrawerLayout>





     MY DEPENDENCIES ARE THE FOLLOWING:
    dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
        implementation 'com.android.support:design:28.0.0'
        implementation 'com.android.support:appcompat-v7:28.0.0'
        implementation 'com.android.support.constraint:constraint-layout:1.1.3'
        testImplementation 'junit:junit:4.12'
        androidTestImplementation 'com.android.support.test:runner:1.0.2'
        androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
        implementation 'com.android.support:support-v4:28.0.0'
    }



  --------- BUILD.GRADLE:PROJECT---------


     // Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.4'


        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

Код есть. Я добавил зависимости внизу. Спасибо

Hernan Josue Zavala 07.10.2018 08:02

пожалуйста, поделитесь своим проектом build.gradle

Kapta 07.10.2018 08:10

Можете ли вы попробовать изменить тему с верхней панели над предварительным просмотром, в настоящее время AppTheme существует, попробуйте изменить

Syed Qasim Ahmed 07.10.2018 08:13

Также удалите navgationView и проверьте

Syed Qasim Ahmed 07.10.2018 08:21

Ошибка: «Не удалось найти стиль cardViewStyle в текущей теме».

Hernan Josue Zavala 07.10.2018 08:22
0
5
106
2

Ответы 2

В большинстве случаев это обычно из-за проблем с кешем студии Android. Вы можете попытаться аннулировать и перезапустить Android Studio, перейдя по ссылке:

 File->Invalide Caches / Restart.

После того, как вы добавили все зависимости, это должно решить вашу проблему.

Надеюсь, это поможет.

Если вы хотите использовать CardView, вы должны указать его зависимость Добавить эту зависимость

implementation 'com.android.support:cardview-v7:28.0.0'

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

Hernan Josue Zavala 07.10.2018 08:31

измените тему на панели, где вы видите APPTHEME, измените ее на другую тему и попробуйте

Syed Qasim Ahmed 07.10.2018 08:33

Я просто пытаюсь это сделать, но то, что он делает, меняет цвет экрана, а не похоже, что меняет содержимое, такое как кнопки или изображения, которые я вставил. Это так странно, что я никогда не сталкивался с этой проблемой, пока не начал использовать drawerLayout.

Hernan Josue Zavala 07.10.2018 08:41

для просмотра других элементов измените видимость NavigationView на visibility = Gone

Syed Qasim Ahmed 07.10.2018 09:24

Я думаю, что это может быть ошибка в моей версии студии Android, потому что я нашел этот пост stackoverflow.com/questions/52220326/…, в котором была аналогичная проблема. Моя версия студии Android - "Android Studio 3.1.4", построенная 23 18 июля.

Hernan Josue Zavala 07.10.2018 18:45

Проблема решена! Я запустил новое обновление Android Studio, и теперь оно работает! Android studio 3.1.4 имеет проблемы с отрисовкой с помощью drawerLayout! Спасибо всем!

Hernan Josue Zavala 08.10.2018 00:56

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