Android 片段视图按主视图的id查找视图
我有一个带有片段视图的Android 片段视图按主视图的id查找视图,android,android-fragments,Android,Android Fragments,我有一个带有片段视图的MainActivity。 在main活动中,我加载此布局: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.MainLayout); } 在主布局中,是一个id为“fab”的浮动操作按钮 在片段视图类中,我加载片段视图布局如下: @Override publ
MainActivity
。
在main活动中
,我加载此布局:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.MainLayout);
}
在主布局中,是一个id为“fab”的浮动操作按钮
在片段视图类中,我加载片段视图布局如下:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
FragementView = inflater.inflate(R.layout.FragmentViewLayout, container, false);
FloatingActionButton fab = (FloatingActionButton) FragementView .findViewById(R.id.fab);
return FragementView;
}
现在我想进入片段视图类,fab(按id查找)
但这将是一个空对象
我的错误在哪里?您的
FloatActionButton
位于main布局中
布局不是FragmentViewLayout
布局。因此,您应该在
活动中检索它
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.MainLayout);
...
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
}
在您的FragmentViewLayout
FragmentViewLayout.xml
<RelativeLayout
...
//include FloatingActionButton here
...
/>
如果需要获取片段中活动的视图,请使用getActivity()
报价文件
具体而言,片段可以使用getActivity()访问活动实例,并轻松执行任务,例如在活动布局中查找视图:
FloatingActionButton fab = (FloatingActionButton) getActivity().findViewById(R.id.fab);
FragementView是一个视图?是的,这是一个视图