2016-01-10 74 views
0

正如问题所述,android中的碎片是View或ViewGroup。谁能解释Android碎片查看或查看组

这里是片段从docs

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

container参数传递给onCreateView()的onCreateView方法父 的ViewGroup(从活动的布局)在你的片段布局 将插入

而且

要为您的片段绘制UI,您必须从此 方法返回一个视图,该方法是片段布局的根。

+2

它不是View或ViewGroup.It是一个对象,它的一个属性是一个ViewGroup。 –

+0

啊碎片,开发中的第一个主要思维障碍,你写的方法返回一个曾经放在屏幕上的视图。在幕后,Fragment类处理容器参数是什么(不要引用它,但我认为它与FragmentTransaction有关)。 –

回答

0

片段是一种不需要全屏的活动,它可以将屏幕分割成多个片段,因此很适合手机和平板电脑。

+0

是的,你是正确的使用fragment.But我想知道他们是View或ViewGroup –

1

您不能将片段定义为视图或视图组。碎片不仅仅是这些。碎片可视化的最简单方法是将它们视为具有自己的xml外观的活动的块,拥有自己的生命周期回调的自己的行为。在活动之上运行,允许您在运行时对它们执行诸如添加,替换等操作。这样,您就可以有效且高效地在布局之间切换。
要了解onCreateView方法,考虑了如下解释:

public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState){ 
     View view =inflater.inflate(R.layout.example_fragment, container, false); 
     return view; 

    } 

这个返回一个视图对象,总是ViewGroup与该组查看对象的定义片段的UI。 Activity在Fragment提供用于显示的UI时调用此事件处理程序。

0

我觉得是不行,activity(片段)控制什么视图显示,viewGroup扩展视图并实现ViewManger.Only Activity加载相关Views可以手机显示layout.Activity是一个Group,view可以在这个容器中正常工作

0

都没有。 Fragment是一个基类。

https://developer.android.com/guide/components/fragments.html

Fragment表示行为或在 的用户界面的一部分的活动

Fragment包含一个字段:

// The View generated for this fragment. 
View mView; 

了在onCreateView产生其中有执行:

@Nullable 
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, 
     Bundle savedInstanceState) { 
    return null; 
} 

所以,如果你想有一个FragmentView然后@Override该方法。然后,如果您使用Activity或嵌套Fragment的适当片段事务,则Fragment可以显示给用户。