我正在尝试将导航抽屉实施到受Material Design影响的应用中(Appcompat v21)。导航抽屉无法正常工作 - 总是全屏
所以我刚刚创造了基本的XML文件:
你可能在一个位放大到能够告诉我所做的事情有:
- 根查看是android.support.v4.widget.DrawerLayout本身
- 第一个孩子是主要内容,这里作为一个简单的LinearLayout
- 第二个chil d - 抽屉本身 - 是一个简单的listview,宽240dp。
正如你可能看到的,背景应该是粉红色的,因为我告诉主要内容视图是这样的。列表视图应该是蓝色的。现在,您可以在预览窗口的右侧看到整个屏幕变成蓝色,而不是只有listView。
我的问题在哪里?我告诉列表视图只有240dp宽,不符合父母。 如果我尝试运行应用程序,抽屉永远不会“关闭”,这意味着该列表仅位于主内容视图的顶部。
看起来程序并不知道DrawerLayout是什么,只是在主内容布局上绘制内容。
我不明白为什么这次不行。
有什么建议吗?
编辑: 测试活动:
public class TestActivity extends Activity {
DrawerLayout drawerLayout;
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
drawerLayout = (DrawerLayout)findViewById(R.id.test_drawer_layout);
listView = (ListView)findViewById(R.id.test_left_drawer);
}
}
当你使用FrameLayout而不是LinearLayout时,你有同样的事情吗? – Rami 2014-11-21 21:17:16
刚刚测试过它:是的,我使用FrameLayout也有同样的问题。也许值得一提的是,我禁用了主题中的'windowActionBar',因为我正在使用工具栏。但我认为这不应该是一个问题 – user2410644 2014-11-21 21:20:38
你可以发布活动代码吗? – Rami 2014-11-21 21:27:56