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

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

Войти
Регистрация
Восстановить пароль
 
Skifych
0 / 0 / 0
Регистрация: 23.03.2014
Сообщений: 20
#1

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

21.05.2014, 12:40. Просмотров 691. Ответов 2
Метки нет (Все метки)

Собственно сабж. Имеется приложение, для которого нужно создать PrefereneActivity. Для настроек этого же приложения.
res/xml/iasksettings.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
    <ListPreference android:entries="@array/protoList"/>
    <EditTextPreference 
        android:dialogTitle="@string/hostAddrTitle" 
        android:positiveButtonText="@string/butOk" 
        android:negativeButtonText="@string/butCancel" 
        android:summary="@string/hostAddrSummary" 
        android:defaultValue="@string/hostAddr" 
        android:enabled="true" 
        android:title="@string/hostAddrTitle"/>
</PreferenceScreen>
Создан класс
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package com.itwell.iaskmobileclient;
 
import android.os.Bundle;
import android.preference.PreferenceActivity;
 
public class IASKmobileSettings extends PreferenceActivity 
{
    @SuppressWarnings("deprecation")
    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.iasksettings);
    }
}
Зарегистрировано в AndroidMainfest.xml:
XML
1
2
3
4
        <activity
            android:name="com.itwell.iaskmobileclient.IASKmobileSettings"
            android:label="@string/action_settings" >
        </activity>
Пытаюсь вызвать из MainActivity через button:
Java
1
2
3
4
5
6
7
8
9
public void onClickButton1(View v) {
        showSettings();
    }
 
    public void showSettings()
    {
        Intent i = new Intent(this, IASKmobileSettings.class);
        startActivity(i);
    }
Приложение валиться при попытке вызвать PreferenceActivity:

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
05-19 07:24:19.446: I/Process(1785): Sending signal. PID: 1785 SIG: 9
05-21 04:29:07.647: D/gralloc_goldfish(2162): Emulator without GPU emulation detected.
05-21 04:29:17.787: I/Choreographer(2162): Skipped 86 frames!  The application may be doing too much work on its main thread.
05-21 04:29:19.137: D/dalvikvm(2162): GC_FOR_ALLOC freed 110K, 6% free 3121K/3308K, paused 444ms, total 460ms
05-21 04:29:19.137: I/dalvikvm-heap(2162): Grow heap (frag case) to 3.727MB for 635812-byte allocation
05-21 04:29:19.447: D/dalvikvm(2162): GC_FOR_ALLOC freed 7K, 6% free 3734K/3932K, paused 275ms, total 275ms
05-21 04:29:20.447: W/ResourceType(2162): Failure getting entry for 0x7f050000 (t=4 e=0) in package 0 (error -75)
05-21 04:29:20.487: D/AndroidRuntime(2162): Shutting down VM
05-21 04:29:20.487: W/dalvikvm(2162): threadid=1: thread exiting with uncaught exception (group=0xb3a78ba8)
05-21 04:29:20.587: E/AndroidRuntime(2162): FATAL EXCEPTION: main
05-21 04:29:20.587: E/AndroidRuntime(2162): Process: com.itwell.iaskmobileclient, PID: 2162
05-21 04:29:20.587: E/AndroidRuntime(2162): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.itwell.iaskmobileclient/com.itwell.iaskmobileclient.IASKmobileSettings}: android.content.res.Resources$NotFoundException: Resource ID #0x7f050000
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.app.ActivityThread.access$800(ActivityThread.java:135)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.os.Handler.dispatchMessage(Handler.java:102)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.os.Looper.loop(Looper.java:136)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.app.ActivityThread.main(ActivityThread.java:5017)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at java.lang.reflect.Method.invokeNative(Native Method)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at java.lang.reflect.Method.invoke(Method.java:515)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at dalvik.system.NativeStart.main(Native Method)
05-21 04:29:20.587: E/AndroidRuntime(2162): Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x7f050000
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.content.res.Resources.getValue(Resources.java:1123)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.content.res.Resources.loadXmlResourceParser(Resources.java:2309)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.content.res.Resources.getXml(Resources.java:988)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.preference.GenericInflater.inflate(GenericInflater.java:261)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.preference.PreferenceManager.inflateFromResource(PreferenceManager.java:272)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.preference.PreferenceActivity.addPreferencesFromResource(PreferenceActivity.java:1472)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at com.itwell.iaskmobileclient.IASKmobileSettings.onCreate(IASKmobileSettings.java:13)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.app.Activity.performCreate(Activity.java:5231)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
05-21 04:29:20.587: E/AndroidRuntime(2162):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
05-21 04:29:20.587: E/AndroidRuntime(2162):     ... 11 more
05-21 04:34:20.997: I/Process(2162): Sending signal. PID: 2162 SIG: 9
Вроде всё пот руководству делаю, а что-то не работает. Подскажете?
PS: Да, поддержка 2.2-4.3
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.05.2014, 12:40     PreferenceActivity
Посмотрите здесь:

Найти Button в PreferenceActivity - Программирование Android
Надо скрыть кнопку в PreferenceActivity. Не могу ее поймать, почему то null. public class SettingsActivity extends PreferenceActivity { ...

PreferenceActivity ИЛИ PreferenceFragment - Программирование Android
Привет. Думаю вопрос понятен, опишу свои впечатления и жду ваших. Значит нужно просто вызывать какое нибудь FULL SCREEN окошко...

PreferenceActivity настройки приложения - Программирование Android
Делаю все по этому уроку в Android Studio....

Добавление пользовательской кнопки (Button) в PreferenceActivity - Программирование Android
Всем привет! Хочу кинуть на PreferenceActivity кнопку, по нажатию которой все сделанные изменения настроек программы будут комплексно...

PreferenceActivity - что использовать вместо устаревшего метода addPreferencesFromResource - Программирование Android
Разбираюсь с PreferenceActivity. Определил разметку, и теперь хочу подключить, а метод addPreferencesFromResource(int preferenceResId) уже...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dan41k
]:->
97 / 91 / 13
Регистрация: 12.11.2013
Сообщений: 398
21.05.2014, 15:21     PreferenceActivity #2
В методе onCreate Resources$NotFoundException: Resource ID #0x7f050000. Не может найти ваш ресурс какой-то

Добавлено через 2 минуты
Java
1
        addPreferencesFromResource(R.xml.iasksettings);
тут
Skifych
0 / 0 / 0
Регистрация: 23.03.2014
Сообщений: 20
21.05.2014, 15:32  [ТС]     PreferenceActivity #3
Немного разобрался - на 2.2 работает, соответственно, нужно добавить ещё xml-ок которые будут работать от 3.0 и выше
http://developer.android.com/guide/t.../settings.html
Не внимательно читал.
Теперь буду переделывать
Yandex
Объявления
21.05.2014, 15:32     PreferenceActivity
Ответ Создать тему
Опции темы

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