我可以在 onCreateView 调用期间从 xml 加载布局吗,我试过:
- setLayoutResource(R.layout.test);
- setWidgetLayoutResource(R.layout.test);
它崩溃了,我不知道如何从方法参数返回 ViewGroup 父级? 我也试过:
- View view = View.inflate(getContext(), R.layout.test, parent) 但效果不佳。
我将根布局命名为 widget_frame 但它没有帮助
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:padding="1dp" android:clickable="false" android:id="@+id/widget_frame">
<LinearLayout ....
你能告诉我我做错了什么或者给我指出一些有效的例子吗? 谢谢
更新
下面是一个关于如何膨胀上面布局的有效解决方案:
LayoutInflater inflater = (LayoutInflater)getContext().
getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.test, parent, false);
最佳答案
如果您正在使用 onCreateView
,我猜您是在使用 fragment
或扩展 View
。
无论如何检查这个:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.your_layout, container);
}
关于android - 在 onCreateView 中加载布局以自定义首选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4733755/