web-dev-qa-db-ja.com

Android Studio 3.2プレビューではナビゲーションプレビューを利用できません

Android Studioに表示されているナビゲーショングラフを試してみたいと思っています。しかし、インポートするとプレビューが表示されません google sample

Android Studio 3.2 Preview Canary 16を使用しました

enter image description here

<navigation xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:app="http://schemas.Android.com/apk/res-auto"
    app:startDestination="@+id/launcher_home">

    <fragment
        Android:id="@+id/launcher_home"
        Android:name="com.Android.samples.Arch.componentsbasicsample.StartFragment"
        Android:label="Home">

        <action
            Android:id="@+id/end_action"
            app:destination="@id/end_dest" />

    </fragment>

    <fragment
        Android:id="@+id/end_dest"
        Android:name="com.Android.samples.Arch.componentsbasicsample.EndFragment"
        Android:label="End"
        >

    </fragment>
</navigation>

2018年10月6日に更新:

プロジェクトをリビルドしても機能しません。しかし、新しい画面を追加すると、プレビューモードで新しい画面が表示されました

enter image description here

22
Long Ranger

ナビゲーションエディター(ナビゲーショングラフのxmlファイル)の[テキスト]タブをクリックして、以下を追加する必要があります。

tools:layout="@layout/layout_name"

宛先要素の内部。

このようなものでなければなりません:

<fragment
    Android:id="@+id/someFragment"
    Android:name="com.freesoulapps.navigationtest.fragments.SomeFragment"
    Android:label="Some Fragment"
    tools:layout="@layout/layout_name">
</fragment>
51
Alex

ナビゲーションxmlでプレビューを表示する別の方法があります。最初にあなたのXMLフラグメント追加に行きます

tools:context="com.packagename.nameFragment"

exemple for my frag layout

以上です

ナビゲーションファイルに移動すると、選択範囲内のプレビューとナビゲーションエディターを確認できます

enter image description hereenter image description here

そして、コードを見ると自動書き込みです

tools:layout="@layout/layout_name"

私にとっては、ナビゲーションエディターにフラグメントを追加する前にプレビューを行うロジックがあります。レイアウトにtools:contextを自動的に追加する方法があるかもしれません

オートコンプリートはtools:contextフラグメントを示唆していませんtools:contextアクティビティホストのみを示唆しているので、フラグメントの名前を書き込む必要があります...誰かがこれにトリックを持っている場合

tools:contextの詳細: ここにリンクの説明を入力してください

2
Williams OuiOui