在我查找inflate后,我发现它很难理解根视图的含义。它只是这个生成的xml层次结构的父视图,还是整个视图层次结构的最高视图。
我认为答案很可能是前者。但我遇到了一个问题。如果在我无法获得此生成的层次结构的父视图的情况下,每次我给层次结构树充气时是否必须设置布局参数?
这是我的代码。并且LinearLayout无法填充父级。我认为LinearLayout的layout_height
和layout_width
必须设置为wrap_content
。
storage_status.xml
<?xml version="1.0" encoding="utf-8"?>
<com.android.contacts.StorageStatusView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="match_parent"
android:layout_width="match_parent">
<View
android:layout_height="50px"
android:layout_width="50px"
android:background="#f00"/>
</com.android.contacts.StorageStatusView>
java文件中的片段。
private class QuickActionClickListener implements QuickAction.OnActionItemClickListener {
@Override
public void onItemClick(QuickAction source, int pos, int actionId) {
switch (actionId) {
case ACTION_ID_STORAGE_STATUS :
final LayoutInflater inflater = getLayoutInflater();
new AlertDialog.Builder(ContactsListActivity.this)
.setTitle(UIUtils.getString(ContactsListActivity.this, R.string.storage_status))
.setView(inflater.inflate(R.layout.storage_status, null))
.show();
break;
}
}
}
提前致谢。抱歉我的英语很差。
答案 0 :(得分:-1)
正如您所说,它只是生成的xml层次结构的父级,如果在没有指定父级的情况下给视图充气,则必须提供布局参数。