如何在使用片段时附加到parentView?

时间:2013-05-12 18:28:07

标签: android android-fragments

我跟随this tutorial并且工作得很好。在我的片段视图中,有一些按钮,我有一些onClick分配给。例如,我有一个按钮,如:

<ImageButton
 android:onClick="doSomething">
</ImageButton>

在创建rootView时,我使用以下代码:

 @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    ViewGroup rootView = (ViewGroup) inflater.inflate(
            R.layout.fragment_screen_slide_page, container, false);

    return rootView;
}

我做了一些谷歌搜索,发现最后一个参数是附加到parentView,我已将其设置为true。但父视图是容器。这个容器指向哪里? 我应该在哪里写“doSomething”函数?

1 个答案:

答案 0 :(得分:1)

  

我做了一些谷歌搜索,发现最后一个参数是附加到   parentView和我已将其设置为true。

请勿将其设为true。在onCreateView()中,您将为片段创建视图并将其返回,Android将自己将该视图附加到布局(文档说明)。

  

此容器指向何处?

如果不为null,它将是添加片段视图的布局,通常用于为新膨胀的视图生成正确的LayoutParams

  

我应该在哪里写“doSomething”功能?

由于使用onClick属性的按钮将成为片段布局的一部分,您应该从布局中删除onClick属性,并在按钮上的代码中设置OnClickListener。 Android会在doSomething()级别搜索Activity方法,因此您无法直接在片段中收到点击事件。