gpt4 book ai didi

java - Android 抽屉布局显示在 fragment 内容下

转载 作者:太空宇宙 更新时间:2023-11-03 10:46:25 25 4
gpt4 key购买 nike

我正在向使用 fragment 的 Activity 添加抽屉布局。我已经按照描述实现了这个 here根据 android 文档。抽屉布局 Adapter 和 View 的所有工作都在于它们显示,但抽屉在 fragment 内容“下方”延伸。这是正在发生的事情的图片:enter image description here

有人知道这是为什么吗?我的 Activity xml 代码和 Activity 添加 fragment 如下:

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_alarm_list); // for drawer navigation
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager
.beginTransaction();
fragmentTransaction.replace(android.R.id.content,
new AlarmListFragment());
fragmentTransaction.commit();
setUpDrawer(fragmentManager);
}

private void setUpDrawer(FragmentManager fm) {
String[] drawerItems = getResources().getStringArray(
R.array.drawer_array);
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
ListView drawerList = (ListView) findViewById(R.id.left_drawer);

// Set the adapter for the list view
drawerList.setAdapter(new ArrayAdapter<String>(this,
R.layout.item_nav_drawer, drawerItems));
// Set the list's click listener
drawerList.setOnItemClickListener(new
DrawerItemClickListener(drawer,drawerList,drawerItems,fm));
}

布局:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<FrameLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<ListView
android:id="@+id/alarm_list"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</ListView>
</FrameLayout>

<ListView
android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="#111"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp" />

</android.support.v4.widget.DrawerLayout>

我必须在某处设置 z-index 吗?我可以提供所需的任何进一步信息,我真的很想弄清楚!

最佳答案

我不知道是什么导致了这个问题,但要解决它,您必须将 fragment 添加到您的 FrameLayout 的内容中,该内容具有 id = content_frame

所以编辑这一行

fragmentTransaction.replace(android.R.id.content,
new AlarmListFragment());

成为

 fragmentTransaction.replace(R.id.content_frame,
new AlarmListFragment());

关于java - Android 抽屉布局显示在 fragment 内容下,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22733147/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com