[更新]
AddHeaderViewを追加して問題を解決します。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTitle = mDrawerTitle = getTitle();
mPlanetTitles = getResources().getStringArray(R.array.planets_array);
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
mDrawerList = (ListView) findViewById(R.id.left_drawer);
LayoutInflater inflater = getLayoutInflater();
ViewGroup mTop = (ViewGroup)inflater.inflate(R.layout.header_listview_menu, mDrawerList, false);
mDrawerList.addHeaderView(mTop, null, false);
================================
私の質問はとても簡単です!
ナビゲーションドロワーにタイトルを追加する方法を教えてください。
各アイテムのリストビュー(アイコン+テキスト)でナビゲーションドロワーをすでに作成しました。
どうもありがとう、
TextView
をListView
の上に置き、垂直線LinearLayout
で囲みます。リストビューに与えるAndroid:layout_weight="1"
およびAndroid:layout_height="0dip"
他のListView
に見出しを追加するのと同じ方法で、ListAdapter
に見出し行と詳細行を返すように指示します。低レベルでは、これにはListAdapter
内のgetViewTypeCount()
やgetItemViewType()
などのメソッドをオーバーライドすることに加えて、getView()
に行タイプの違いを認識させる必要があります。 。または、 https://github.com/emilsjolander/StickyListHeaders または http://code.google.com/p/Android-amazing-listviewのような既存の高レベルの実装を使用します/ またはAndroid listview headers
を検索したときに見つかった他のいずれか。
少し遅いかもしれませんが、もっと簡単な解決策があると思います。アクティビティのレイアウトでは、DrawerLayout内にlistViewを追加する代わりに、たとえばLinearLayoutを追加でき、セパレーターや行を簡単に追加できます。例えば:
<RelativeLayout
Android:layout_width="match_parent"
Android:layout_height="match_parent">
<LinearLayout
Android:orientation="vertical"
Android:layout_width="match_parent"
Android:layout_height="match_parent">
<com.astuetz.viewpager.extensions.PagerSlidingTabStrip
Android:id="@+id/indicator"
Android:layout_height="48dip"
Android:layout_width="fill_parent"/>
<ViewPager
Android:id="@+id/pager"
Android:layout_width="fill_parent"
Android:layout_height="0dp"
Android:layout_weight="1"/>
</LinearLayout>
</RelativeLayout>
<LinearLayout
Android:orientation="vertical"
Android:id="@+id/left_drawer"
Android:layout_width="240dp"
Android:layout_height="match_parent"
Android:layout_gravity="start"
Android:background="#111">
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Separator 1"/>
<Button
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="First button"/>
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Separator 2"/>
</LinearLayout>
また、アクティビティでは、ボタンにリスナーを追加できます。
お役に立てば幸いです。