inflateを探した後、私はそれがルートビューの意味を理解するのが難しいと感じました。この生成されたxml階層の親ビューか、全体のビュー階層のuppestビューだけですか?
LayoutInflaterのinflateメソッドを使用する場合、ルートビューを設定するにはどうすればよいですか?
私は答えがおそらく前者だと思います。しかし、私は問題に直面しています。場合は、私はこの階層の親ビューを取得することができない場合、私は階層のツリーを膨らませるたびにレイアウトパラメータを設定する必要がありますか?
ここは私のコードです。また、LinearLayoutは親を埋めることができません。 LinearLayoutのlayout_height
とlayout_width
はwrap_content
に設定する必要があります。 javaファイル内
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>
スニペット。
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;
}
}
}
ありがとうございます。そして、私の貧しい英語のために申し訳ありません。
誰かが以前にこの質問をしたことがわかりました。そしてその答えは明らかに終わった。 http://stackoverflow.com/questions/5026926/making-sense-of-layoutinflater –