Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
contedevel
57 / 55 / 8
Регистрация: 07.10.2012
Сообщений: 596
#1

Preference headers legacy - Программирование Android

09.02.2014, 16:51. Просмотров 587. Ответов 4
Метки нет (Все метки)

Здравствуйте!
Пожалуйста, объясните, что я не так делаю? Три часа уже сижу над этими настройками, вроде все делаю, как на developer.android.com...

Сделал вот такой preference_headers_legacy.xml:
XML
1
2
3
4
5
6
7
8
9
10
11
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
    <Preference 
        android:title="@string/header_title_schedule"
        android:summary="@string/header_summary_schedule"  >
        <intent 
            android:targetPackage="com.contedevel.timetable.library.settings"
            android:targetClass="com.contedevel.timetable.library.settings.SettingActivity"
            android:action="com.contedevel.timetable.library.settings.PrefOne" />
    </Preference>
</PreferenceScreen>
В итоге при запуске на версии Android 2.3.3 получаю лог:
Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
02-09 11:34:47.775: D/AndroidRuntime(750): Shutting down VM
02-09 11:34:47.775: W/dalvikvm(750): threadid=1: thread exiting with uncaught exception (group=0x40015560)
02-09 11:34:47.786: E/AndroidRuntime(750): FATAL EXCEPTION: main
02-09 11:34:47.786: E/AndroidRuntime(750): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.contedevel.timetable.library.settings/com.contedevel.timetable.library.settings.SettingActivity}; have you declared this activity in your AndroidManifest.xml?
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1405)
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.app.Instrumentation.execStartActivity(Instrumentation.java:1379)
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.app.Activity.startActivityForResult(Activity.java:2827)
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.app.Activity.startActivity(Activity.java:2933)
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.preference.Preference.performClick(Preference.java:828)
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.preference.PreferenceScreen.onItemClick(PreferenceScreen.java:190)
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.widget.AdapterView.performItemClick(AdapterView.java:284)
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.widget.ListView.performItemClick(ListView.java:3513)
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.widget.AbsListView$PerformClick.run(AbsListView.java:1812)
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.os.Handler.handleCallback(Handler.java:587)
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.os.Handler.dispatchMessage(Handler.java:92)
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.os.Looper.loop(Looper.java:123)
02-09 11:34:47.786: E/AndroidRuntime(750):  at android.app.ActivityThread.main(ActivityThread.java:3683)
02-09 11:34:47.786: E/AndroidRuntime(750):  at java.lang.reflect.Method.invokeNative(Native Method)
02-09 11:34:47.786: E/AndroidRuntime(750):  at java.lang.reflect.Method.invoke(Method.java:507)
02-09 11:34:47.786: E/AndroidRuntime(750):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
02-09 11:34:47.786: E/AndroidRuntime(750):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
02-09 11:34:47.786: E/AndroidRuntime(750):  at dalvik.system.NativeStart.main(Native Method)


В манифесте SettingActivity прописана:
XML
1
2
3
4
5
6
7
8
<activity
            android:name="com.contedevel.timetable.library.settings.SettingActivity"
            android:label="@string/activity_title_settings" 
            android:parentActivityName="com.contedevel.timetable.free.MainActivity">
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value="com.contedevel.timetable.free.MainActivity" />
        </activity>
Я вообще не могу понять что не так-тоҘ Пробовал по разному уже класс и пакет писать результат один и тот же блин(

Помогите разобраться, пожалуйста!

Добавлено через 1 час 13 минут
Разобрался все же! Это скорее конкретно для моего случая, но может кто тоже столкнется, поэтому напишу:
targetPackage должен указывать именно на пакет самого приложения, даже если, настройки находятся в библиотеке

Поэтому возник новый вопрос. Как это обойти, мне нельзя ссылаться на приложение из библиотеки?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2014, 16:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Preference headers legacy (Программирование Android):

Preference - Программирование Android
public class Preference extends PreferenceFragment { public void onCreate(Bundle savedInstanceState) { ...

Назад к Activity из Preference - Программирование Android
getFragmentManager().beginTransaction() .replace(android.R.id.content, new Preference()).commit(); вот таким...

Не могу добратьс из фрагмента к Preference - Программирование Android
Хочу заполнить из фрагмента данные из Preference. Ругается в строке 39. Подчеркивает - MODE_PRIVATE Пишет - MODE_PRIVATE cannot be...

Как обновить textview в фрагменте после обновления preference - Программирование Android
Вечер добрый. В общем потратил весь день что бы разобраться с этим вопросом, но все безуспешно. Необходимо обновить значение 2 textview...

Дублируются файлы в папках и в /storage/emulated/0 и /storage/emulated/legacy — почему? - Программирование Android
Почему дублируются папки в Андроид и можно ли это как-то предотвратить? Андроид 5.1 И можно ли удалить из legacy - проблем точно не...

Постоянные ошибки с сессиями (headers already sent и Cannot modify headers) - PHP
Добрый день, хоть тема я так понял и избитая но всё же не могу понять логику работы сессий. Вот у меня есть админ панель из десятка файлов....

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Netscape
371 / 358 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
10.02.2014, 02:10 #2
Цитата Сообщение от contedevel Посмотреть сообщение
Как это обойти, мне нельзя ссылаться на приложение из библиотеки?
Никак.
contedevel
57 / 55 / 8
Регистрация: 07.10.2012
Сообщений: 596
10.02.2014, 02:12  [ТС] #3
Цитата Сообщение от Netscape Посмотреть сообщение
Никак.
Уже обошел) Просто реализовал это программно в библиотеке
Netscape
371 / 358 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
10.02.2014, 02:22 #4
Это не обход, а правильный путь.
Цитата Сообщение от contedevel Посмотреть сообщение
ссылаться на приложение из библиотеки
все равно нельзя.
contedevel
57 / 55 / 8
Регистрация: 07.10.2012
Сообщений: 596
10.02.2014, 02:25  [ТС] #5
В смысле?

Добавлено через 1 минуту
А блин, не правильно прочитал) Да, мне наоборот и не надо было ссылаться, иначе и смысла делать библиотеку нет)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.02.2014, 02:25
Привет! Вот еще темы с ответами:

UEFI или Legacy? - BIOS
Уважаемые форумчане, не могу понять какой у меня тип биоса uefi или legacy. На сайте читал, что в меню бут должен быть выбор между тем и...

Написание Legacy Nt драйвера: исправить код - Программирование драйверов
Здравствуйте, пишу драйвер под плату Плата генерирует прерывания с определенным интервалом, смысл их перехватить и где нибудь отобразить ...

Efi + legacy support + нужны ли разделы? - Gentoo Linux
вопрос такой. для efi рекомендуют делать отдельно разделы под efi. Если я включу поддержку legacy support(превращаяет грубо говоря efi в...

HDD, legacy, ноутбук и ошибка 3F0 - Жесткие диски
Доброй ночи. В общем такая история. Может кто поможет? Вчера принесли ноутбук в ремонт - не показывает дисплей и бесполезно цеплять...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
10.02.2014, 02:25
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru