访问自定义NavigationDrawer中的项目

时间:2014-02-23 00:18:18

标签: java android listview android-fragments navigation-drawer

我是Android初学者。我正在使用Android Studio,并使用NavigationDrawer创建我的活动。 所以我有一个ListView,但我想在Drawer中添加一些其他的东西。 我在NavigationDrawerFragment.java中创建了一个自定义布局:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {

    RelativeLayout insideDrawer = (RelativeLayout) inflater.inflate(
            R.layout.fragment_fragment_inside_drawer, container, false);


    return insideDrawer;
}

它有效。 我在抽屉里面有一个ListView和一个按钮。 我尝试使用getActivity.findViewById(R.id.mylistview)访问列表视图,但它不起作用。

那么如何在抽屉里访问我的物品呢? 谢谢!

1 个答案:

答案 0 :(得分:1)

您正在从活动中搜索您的视图,但由于您要查找的视图位于片段内(我们知道这里有片段,因为onCreateView),您必须从视图中搜索您在该方法中膨胀

在onCreateView中返回视图后,可以使用片段的getView()方法,然后调用.findViewById()。

或者如果你需要在onCreateView中返回之前搜索视图,在膨胀之后,只需调用insideDrawer.findViewById() - 因为insideDrawer是你在该方法中膨胀的relativeLayout。