Пожалуйста, помогите прояснить текущие стандарты действий с настройками в Android.

Я новичок в Android и работаю над своим первым приложением. Я попытался добавить действие настроек, и Eclipse загрузил базовый класс, в котором использовались устаревшие функции, такие как addPreferencesFromResource. Я просмотрел руководство по настройкам для разработчиков Android, но там не было никакого кода . Затем я посмотрел на пример кода в справочном материале PreferenceActivity, но он не сломал вещи достаточно, чтобы я действительно понял. Поэтому я искал другое руководство/учебник.

Из материала PreferenceActivity у меня сложилось впечатление, что текущая парадигма заключается в заполнении PreferenceFragments вместо PreferenceActivities. Но я не могу найти четкое руководство по использованию этого подхода. В большинстве найденных мною уроков используются PreferenceActivities и устаревшие функции.

Поэтому я знаю, что это не так конкретно, как большинство вопросов должно быть на этом сайте, но мне не помешало бы некоторое руководство и четкий ответ о том, какова текущая парадигма, потому что я не хочу изучать устаревшие методы.

У меня есть только две или три настройки, которые я хочу реализовать, так что это должно быть довольно просто. Но я хочу сделать это правильно.


person NSouth    schedule 31.07.2014    source источник


Ответы (1)


Итак, вот разница между ними: с фрагментом предпочтений, если в телефоне есть приложение настроек с потоком основных сведений И вы встроены в системные настройки, когда вы открываете свои конкретные настройки, они будут встроены и не перейдут в полноэкранный режим. Вот почему Android перешел на PreferenceFragment.

На самом деле, я не знаю ни одного устройства, которое действительно делает это. Я знаю, что на устройствах Samsung, безусловно, наиболее распространенных, все использует полноэкранные действия. Так что идея, к которой они стремились, ужасно умерла.

Таким образом, PreferenceFragment — это то, что Google хотел, чтобы люди использовали, но на самом деле почти никто этого не делает. И если ваше приложение не будет встроено в системные настройки (как настройки клавиатуры), это все равно не будет иметь значения. Поэтому я бы посоветовал пойти по более простому пути и не беспокоиться об этом — просто используйте PreferenceActivity.

person Gabe Sechan    schedule 31.07.2014
comment
Хм, кажется, это более простой вариант. Я думаю, я могу сделать это для этого первого простого приложения. Итак, чтобы уточнить, означает ли это также, что addPreferencesFromResource можно использовать, даже если Eclipse помечает его как устаревший? Или это отдельная тема? - person NSouth; 31.07.2014
comment
Пометка как устаревшая не означает, что она не будет работать, это просто означает, что люди, создавшие библиотеку, больше не предпочитают такой способ. Нередко используется устаревшая функция или две. Просто есть веская причина сделать это. - person Gabe Sechan; 31.07.2014