Android:android.R.id.contentは何に使用されますか?


140

だれでも「android.R.id.content」の意味を説明できますか?

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

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

public static final int content
導入日:APIレベル1

定数値:16908290(0x01020002)


94
android.R.id.content実際の名前/タイプ/ IDを知らなくても、ビューのルート要素を提供します。stackoverflow.com/questions/4486034/…を
Philipp Reichart、2011年

2
これは、次のようなフラグメントトランザクションで役立ちます:mFragmentTransaction.add(android.R.id.content、myFragment);
IgorGanapolsky 2014年

@IgorGanapolskyサンプルアプリが条件付きでこの種のトランザクションを実行します:if(fragmentManager.findFragmentById(android.R.id.content)==null) {fragmentManager.beginTransaction(android.R.id.content, list).add().commit();}これViewのルート要素はどれかわかりますか?
Solace 2014

@Zarahあなたの構文はここで正しくコンパイル可能ですか?
IgorGanapolsky 2014

関連するレイアウトのクラスは何android.R.id.content ですか?
Sushant 2016年

回答:


98

フィリップReichartのコメント

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


5
:それの実際の使用例は、第2項に記載されていますdeveloper.android.com/guide/topics/ui/actionbar.html#Tabs
OrhanC1

4
「実際の名前/タイプ/ IDを知る必要なしに、ビューのルート要素提供します」ルート要素が必要なビューをどのようにして知ることができますか。
Solace 2015

21

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ます。


9

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

したがって、フラグメントマネージャーのルートビューに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">
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.