我试图在特定条件下在运行时更改片段的布局.
onCreateView()中的初始布局:
@Override public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState) { return inflater.inflate(R.layout.cancel_video,null); }
然后在片段代码之后的某个时间,我想用其他布局替换初始布局.
我已经尝试了一些事情到目前为止;这是我最新的:
private void Something(){ if(checkLicenseStatus(licenseStatus,statusMessage)){ View vv = View.inflate(getActivity(),R.layout.play_video,null); //more code } }
我该如何做到这一点?
解决方法
一旦设置了片段的布局,就无法替换它.如果您需要条件布局,那么您必须重新设计布局并将其分割成更小的碎片,或者您可以将所有布局元素分组在子容器(如LinearLayout)中,然后将它们全部放在RelativeLayout中,将其重叠并交换当需要时,使用setVisibility()查看这些LinearLayouts.