【发布时间】:2015-02-26 09:09:27
【问题描述】:
我想在我的导航抽屉中添加子项目,但我无法执行它,因为我不知道逻辑,我尝试了一些示例,但我只能显示项目。
我尝试了以下代码:
package com.example.demo_data1;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.widget.DrawerLayout;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class NavDrawer extends Activity {
String[] menu;
DrawerLayout dLayout;
ListView dList;
ArrayAdapter<String> adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.third_page);
menu = new String[]{"Home","Android","Windows","Linux","Raspberry Pi","WordPress","Videos","Contact Us"};
dLayout = (DrawerLayout) findViewById(R.id.drawerLayout);
dList = (ListView) findViewById(R.id.drawerList);
adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,menu);
dList.setAdapter(adapter);
dList.setSelector(android.R.color.holo_blue_dark);
dList.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> arg0, View v, int position, long id) {
dLayout.closeDrawers();
Bundle args = new Bundle();
args.putString("Menu", menu[position]);
Intent i = new Intent(NavDrawer.this, NavDrawer.class);
switch(position){
case 0:
i = new Intent(NavDrawer.this, MainActivity.class);
break;
case 1:
i = new Intent(NavDrawer.this, Retrieve.class);
break;
}
i.putExtra(null, args);
startActivity(i);
}
});
}
}
下面是xml布局:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawerLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<FrameLayout
android:id="@+id/mainContent"
android:layout_width="match_parent"
android:layout_height="match_parent"></FrameLayout>
<ListView android:id="@+id/drawerList"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
android:background="#fff"></ListView>
</android.support.v4.widget.DrawerLayout>
我只想将子项添加到其各自的项中,并且子项应显示在其父项的右侧。
所以请任何人都可以帮助我解决这个对android有点新的问题,
感谢和问候。
【问题讨论】:
-
DrawerLayout的 XML 在哪里?什么是错误? -
没有错误,我只想在列表视图中添加受人尊敬的项目的子项目,但我无法实现你对同样的想法有什么想法吗?
-
发布活动布局的XML
-
我一定会看看这个......给我一点时间,因为我正忙于另一个问题。
标签: android expandablelistview navigation-drawer