Android: для чего используется android.R.id.content?

Кто-нибудь может объяснить значение слова "android.R.id.content"?

Как это используется?

http://developer.android.com не имеет никаких объяснений.

публичный статический финал int content
С тех пор: API Уровень 1

Постоянное значение: 16908290 (0x01020002)

Ответ 1

Как сказал Филипп Рейхарт:

android.R.id.content предоставляет корневой элемент представления без необходимости знать его фактическое имя/тип/идентификатор. Проверьте fooobar.com/questions/14941/...

Ответ 2

Значение идентификатора android.R.id.content указывает 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.

Ответ 3

Разработчики Google разрабатывают Android UX с конкретными или рекомендуемыми проектами. Макет android.R.id.content определяет linearlayout с несколькими атрибутами, которые, по мнению Android, являются хорошим стандартом.

Таким образом, загрузка корневого представления Fragment Manager с помощью 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">

Ответ 4

Оформить заказ этот ответ, в котором объясняется встроенный идентификатор Android, а также идентификатор, созданный пользователями.

Ответ 5

У меня была аналогичная проблема. Кодирование R.id.content(согласно Andriod Запуск другого действия - отображение сообщения)

Кодирование учебника:

RelativeLayout layout = (RelativeLayout) findViewById(R.id.content);

Это не удалось скомпилировать, проверив несколько раз. Тем не менее, я заметил, что Android Studio предложила/предложила conent (первый т, четвёртое письмо отсутствовало). Затем я использовал это, т.е. Кодированный континент, а не контент (как показано ниже), и компиляция и последующий запуск на моем планшете работали.

RelativeLayout layout = (RelativeLayout) findViewById(R.id.content);

Я использую Android Studio на Windows 7 Build # AI-141.2456560, построенном 1 декабря 2015 года, используя JRE 1.7.0_70-b15 amd64.