片段,FrameLayout如何制作是可滚动的?

时间:2018-06-04 13:07:56

标签: java android xml android-fragments android-framelayout

我很困惑,我有3个片段和DrawerView的app。我需要将项目放在列表中并能够向下滚动,如果我更改布局,我会收到错误,请查看我的XML,+我有点困惑,我应该在哪里放置我的内容(main_activity.xml或fragment_home.xml)因为如果我在其中任何一个中放入任何内容,就会出现内容。谢谢。

activity_main          

    <!-- Layout to contain contents of main body of screen (drawer will slide over this) -->
    <FrameLayout
        android:id="@+id/content"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="@color/colorPrimary"
            android:theme="@style/ThemeOverlay.AppCompat.ActionBar"

            />


    </FrameLayout>

    <!-- Container for contents of drawer - use NavigationView to make configuration easier -->
    <android.support.design.widget.NavigationView
        android:id="@+id/navigation_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:headerLayout="@layout/nav_header"
        app:menu="@menu/drawer_view" />

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

fragment_home.xml

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".HomeFragment">

</FrameLayout>

这个在我的“Home Fragment”java文件中说明了

public class HomeFragment extends Fragment {


    public HomeFragment() {
        // Required empty public constructor
    }


    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        return inflater.inflate(R.layout.fragment_home, container, false);
    }

}

PS - 在该项目中根本没有任何内容,只有工具栏显示3点按钮打开抽屉(或者你可以滑动到达那里)并且有一个菜单可以获取其他片段。

1 个答案:

答案 0 :(得分:0)

将fragment_home.xml的父级设为NestedScrollView,使片段使用fragment_home.xml,并将活动用于activity_main.xml

如果您是新手,那么创建新项目并选择NavigationDrawer,它将提供现成的模板。