私の質問は非常に単純です、 NavigationView for Material Design Drawer のようにアイテムの通知値を追加する方法は?
引き出しを定義するためのプロパティがメニュー項目にありますか?
<menu xmlns:Android="http://schemas.Android.com/apk/res/Android">
<group
Android:checkableBehavior="single">
<item
Android:id="@+id/drawer_home"
Android:checked="true"
Android:icon="@drawable/ic_home_black_24dp"
Android:title="@string/home"/>
<item
Android:id="@+id/drawer_favourite"
Android:icon="@drawable/ic_favorite_black_24dp"
Android:title="@string/favourite"/>
...
<item
Android:id="@+id/drawer_settings"
Android:icon="@drawable/ic_settings_black_24dp"
Android:title="@string/settings"/>
</group>
</menu>
これは、アクションビューを使用するAppCompat-V7のバージョン23のNavigationView
で可能です。 1.カウンターのレイアウトを作成します。 nav_drawer_counter.xml
:
<TextView xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="wrap_content"
Android:layout_height="match_parent"
Android:gravity="center_vertical"
Android:textColor="@color/colorPrimary"/>
menu/nav_drawer.xml
にカウンター値を表示する各アイテムからの参照を追加します(app
名前空間を使用していることを確認してください)。
<item
...
app:actionLayout="@layout/activity_main_nav_drawer_menu_counter"
/>
値をTextView
に設定するメソッドを追加します。例:
@Override
protected void onCreate(Bundle savedInstanceState) {
....
setNavItemCount(R.id.nav_notifications, 10);
}
private void setNavItemCount(@IdRes int itemId, int count) {
TextView view = (TextView) navigationView.getMenu().findItem(itemId).getActionView();
view.setText(count > 0 ? String.valueOf(count) : null);
}
そうそう...そのカウンター値を変更することができます。
あなたが提供した画像から、あなたが使用しているのはライブに見えます Rudson Limaのマテリアルデザインナビゲーションドロワー
そのライブラリには、クラスNavigationLiveo
内に関数public void setNewCounterValue(int drawerItemPosition, int counterValue);
があります。
そのオブジェクトを適切に使用してこの関数を呼び出すことを願っています。
幸運を祈ります... :-)
元のプロジェクトのgithubでどのように行われたかを正確に確認する必要があります。
https://github.com/rudsonlive/NavigationDrawer-MaterialDesign/https://play.google.com/store/apps/details?id=br.liveo.navigationliveo ==
基本的に、ListViewの行のカスタムビューを作成し、それに応じて更新します。
これにはライブラリを使用できます。 MaterialNavigationDrawer または MaterialDrawer を試してください
いくつかの調査から、いいえ、ドロワーに通知を追加する実際の方法がないことがわかりました。ただし、Developersの ナビゲーションドロワーの作成 チュートリアルに示されている例は、開くたびに再描画を強制する方法(およびメニューXMLシートを使用して再描画を実装する方法)を示しています。通知を追加する方法については詳しく説明していませんが、他のソースがあります。
このチュートリアル は、別の「ナビゲーションドロワーの作成方法」チュートリアルであり、通知ボタンに合わせてListViewアダプターをどのように適合させたかについての正確な詳細が追加されています。これはおそらくあなたが探しているものだと思います。
幸運を!それがお役に立てば幸いです。