Ich entwerfe eine native Navigationsleiste in Android Studio. Ich kann die Schublade in meiner Vorschau nicht sehen, da sie links von der Aktivität außerhalb des Vorschaubereichs liegt. Momentan verwende ich eine testlayout.xml-Datei, um meine Änderungen zu sehen, aber oft vergesse ich, sie in die richtige Aktivität einzufügen. Gibt es eine Möglichkeit, eine Vorschau des Schubladenlayouts anzuzeigen?Siehe Navigationsleiste Vorschau
Antwort
Wenn Sie die Schublade Layout/Navigationsleiste in der Lage sein
in der Vorschau Wenn Sie nach dem Tutorial auf https://developer.android.com/training/implementing-navigation/nav-drawer.html
Sie Ihre Listenansicht für die nav Schublade in einer anderen XML-Datei setzen können im Ordner/layout, und fügen Sie sie dann in das XML-Layout des Fachs ein. Bedeutet, dass Sie es in der drawer_layout Datei bearbeiten können und in der Lage sein, es
Layout/drawer_layout
<?xml version="1.0" encoding="utf-8"?>
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/left_drawer"
android:layout_width="280dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
android:background="@color/nav_drawer_background_color"/>
Dann in der navbar
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- The main content view -->
<FrameLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent">
</FrameLayout>
<!-- The navigation drawer -->
<include
android:id="@+id/listView"
layout="@layout/drawer_layout"/>
</android.support.v4.widget.DrawerLayout>
http://Stackoverflow.com/questions/30699561/cani- Vorschau-ein-Öffnen-Navigation-Schublade-in-Android-Studio –
richtig sehen zu NavigationView Vorschau hinzufügen Tools Namespace zu sehen zu Ihrer Schublade Layout:
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
fügen Sie dann Attribut Werkzeuge: openDrawer gleich Gewicht von layout_gravity Wert Ihrer Ansicht Navigation, zum Beispiel
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:openDrawer="left">
<android.support.design.widget.NavigationView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="left"
app:headerLayout="@layout/navigation_header_main"
app:itemTextAppearance="@style/NavigationItemStyleLight"
app:menu="@menu/navigation_main_menu"/>
</android.support.v4.widget.DrawerLayout>
Sie können NavigationView verwenden seine Vorschau auf Android Studio zu bekommen, Es ist viel besser und einfacher zu implementieren dann die alte NavigationsDrawers.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<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:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="start">
<include
layout="@layout/prof_app_bar"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:itemTextColor="@color/text_head_color"
app:itemIconTint="@null"
app:headerLayout="@layout/nav_header_main2"
app:menu="@menu/professional_menu" />
</android.support.v4.widget.DrawerLayout>
das Menü in navigationmenu.xml Ort definieren es in Menü Ressourcenordner: -
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single"
android:id="@+id/top_menu">
<item
android:id="@+id/pnav_setting"
android:icon="@drawable/accountsettings"
android:title="@string/paccount_settingss" />
<item
android:id="@+id/pnav_expertise"
android:icon="@drawable/professional"
android:title="@string/pexpertise" />
<item
android:id="@+id/pnav_comu"
android:icon="@drawable/communication"
android:title="@string/pcomunication" />
<item
android:id="@+id/pnav_change_pass"
android:icon="@drawable/changepasswd"
android:title="@string/pchange_pass" />
<item
android:id="@+id/pnav_change_lang"
android:icon="@drawable/changelang"
android:title="@string/pchange_lang"
android:visible="true"/>
</group>
<group android:checkableBehavior="single"
android:id="@+id/middle_menu">
<item
android:id="@+id/pnav_about_us"
android:icon="@drawable/aboutus"
android:title="@string/about_us" />
<item
android:id="@+id/pnav_feedback"
android:icon="@drawable/feedback"
android:title="@string/feedback"
android:visible="false"/>
<item
android:id="@+id/nav_privacy_policy"
android:icon="@drawable/privacy"
android:title="@string/privacy_policy" />
<item
android:id="@+id/pnav_faq"
android:icon="@drawable/faq"
android:visible="false"
android:title="@string/faq" />
<item
android:id="@+id/pnav_contact_us"
android:icon="@drawable/contactus"
android:title="@string/contact_us" />
</group>
<group android:checkableBehavior="single"
android:id="@+id/bottom_menu">
<item
android:id="@+id/pnav_sign_out"
android:icon="@drawable/signout"
android:title="@string/sign_out" />
</group>
</menu>
Und für Click-Ereignisse immer nutzen dies: -
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(yourItemclickListener);
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:showIn="navigation_view">
<group android:checkableBehavior="single">
<item
android:id="@+id/nav_camera"
android:icon="@drawable/ic_menu_camera"
android:title="Import" />
<item
android:id="@+id/nav_gallery"
android:icon="@drawable/ic_menu_gallery"
android:title="Gallery" />
<item
android:id="@+id/nav_slideshow"
android:icon="@drawable/ic_menu_slideshow"
android:title="Slideshow" />
<item
android:id="@+id/nav_manage"
android:icon="@drawable/ic_menu_manage"
android:title="Tools" />
</group>
<item android:title="Communicate">
<menu>
<item
android:id="@+id/nav_share"
android:icon="@drawable/ic_menu_share"
android:title="Share" />
<item
android:id="@+id/nav_send"
android:icon="@drawable/ic_menu_send"
android:title="Send" />
</menu>
</item>
addieren gerade
tools:showIn="navigation_view"
Nur um des Wissens, bietet Google nun ein Design Support-Bibliothek mit nativem Navigationsleiste: http://developer.android.com/reference/android/support/design/widget /NavigationView.html?utm_campaign=io15&utm_source=dac&utm_medium=blog – Leonardo
Mögliches Duplikat von [Kann ich eine geöffnete Navigationsschublade in Android Studio in der Vorschau anzeigen] (http://stackoverflow.com/questions/30699561/can-i-preview-an-open -Navigation-Schublade-in-Android-Studio) – gustavohenke
Wenn meine Antwort ist die beste Antwort kann es als die akzeptierte Antwort bitte markieren? – Yoker