155

「android.R.id.content」の意味を説明できる人はいますか?

どのように使用されていますか?

http://developer.android.comには説明がありません。

public static final int content
以降: API レベル 1

定数値: 16908290 (0x01020002)

4

5 に答える 5

107

フィリップ・ライチャートがコメントしたように:

android.R.id.content実際の名前/タイプ/IDを知らなくても、ビューのルート要素を提供します。http://stackoverflow.com/questions/4486034/android-how-to-get-root-view-from-current-activityをご覧ください

于 2012-10-15T00:35:31.670 に答える
26

android.R.id.contentID 値は、のViewGroupコンテンツ領域全体の を示しますActivity

以下で使用できますFragment

public class MyActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        if (savedInstanceState == null) {
            getSupportFragmentManager().beginTransaction()
                .add(android.R.id.content, MyFragment.newInstance())
                .commit();
        }
    }

    ...

}

上記のコードは、Viewによって作成さFragmentれたをViewGroup識別されたによって挿入しandroid.R.id.contentます。

于 2014-11-19T09:21:31.233 に答える
10

Google のデザイナーは、特定のまたは推奨されるデザイン ガイドラインに従って Android UX を開発します。レイアウト android.R.id.content は、Android が適切な標準であると考えるいくつかの属性を持つlinearlayoutを定義します。

したがって、フラグメント マネージャーのルート ビューに android.R.id.content をロードすると、これらのガイドラインが確実に実装されます。

注: このレイアウトは属性を設定しています: android:addStatesFromChildren="true"子フラグメントがこのルートビューの属性を上書きできるようにします。

バージョン 19 以降、android.R.id.content は次のファイルで定義されています: auto_complete_list.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/content"
    android:orientation="vertical"
    android:layout_width="match_parent" 
    android:layout_height="wrap_content"
    android:background="@android:drawable/edit_text"
    android:divider="@android:drawable/divider_horizontal_textfield"
    android:addStatesFromChildren="true">
于 2014-07-19T16:27:08.290 に答える