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

Ошибка в Preferences в Android 4.4 - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Не редактируются свойства http://www.cyberforum.ru/android-dev/thread1015206.html
Почему то не редактируются свойства элементов в Properties? Это такой глюк или где-то стоит запрет на редактирование? Добавлено через 36 минут Стал разбираться - не редактируются свойства editText1. Остальные редактируются... Как-то можно решить эту проблему? Добавлено через 38 секунд Имел в виду PlaintText
Android ListView не работает выбор элемента Доброго времени суток. Который день мучаюсь. Не знаю как поменять цвет ListView, так что бы не сбить работу выбора элемента при нажатии. Прочитал уже много тем, и ничего не помогает... что я делаю не так? activity public class TwoActivity extends ListActivity { //массив главных текстов списка String mSign = { "Тест","Язвенные болезни", "При остеохондрозе", "Слух", "Зрение", "Чувства",... http://www.cyberforum.ru/android-dev/thread1014889.html
Как ровно наложить imageview на surfaceview Android
Не удается подогнать правильно размер эти двух view. Хочу чтобы фотография накладывалась на изображение с камеры, но фотография всегда получается меньше. Помогите, пожалуйста <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/RelativeLayout1" ...
Android Подскажите чат разработчиков под Андроид (англ/рус - без разницы)
Сабж
Android Чем улучшить курсовую(браузер)? http://www.cyberforum.ru/android-dev/thread1014214.html
Люди добрые, подскажите пожалуйста чем можно улучшить курсовую и чего оригинального придумать? Ситуация такая- тема курсовой - "Браузер на андроид" - Браузер уже написан как таковой, но сегодня сказали что этого мало и нужно тему улучшать дабы придумать что-то своё? Может у кого есть идеи или кто хоть на мысль подтолкнёт? Спасайте...
Android Как вывести текст айтема в ListView? Добрый вечер ув. Программисты! как вывести текст итема в листвью. Пробовал так: ls2.setOnItemClickListener(new AdapterView.OnItemClickListener() { public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { Log.d(TAG, (String) arg0.getAdapter().getItem(arg2)); подробнее

Показать сообщение отдельно
contedevel
 Аватар для contedevel
57 / 55 / 8
Регистрация: 07.10.2012
Сообщений: 589

Ошибка в Preferences в Android 4.4 - Android

22.11.2013, 10:08. Просмотров 1379. Ответов 2
Метки (Все метки)

Здравствуйте!
Не могу понять суть ошибки, на всех версиях Android 2.2+ программа выполнялась корректно, до выхода Kit kat...
У меня в PreferenceActivity делается проверка на версию Anddroid, а затем запускается либо Preferences with headers or just preferences... Так вот в Android 4.4 невозможно запустить Preferences с заголовками, проверку на версию убирал, пытался только для старших версий загрузить, то же самое...
Вот лог:
Кликните здесь для просмотра всего текста
11-22 00:46:14.821: D/dalvikvm(1069): GC_FOR_ALLOC freed 73K, 5% free 3333K/3484K, paused 59ms, total 60ms
11-22 00:46:14.841: D/(1069): HostConnection::get() New Host Connection established 0xb79f2ba8, tid 1069
11-22 00:46:15.071: W/EGL_emulation(1069): eglSurfaceAttrib not implemented
11-22 00:46:15.081: D/OpenGLRenderer(1069): Enabling debug mode 0
11-22 00:46:26.151: W/EGL_emulation(1069): eglSurfaceAttrib not implemented
11-22 00:46:28.851: D/AndroidRuntime(1069): Shutting down VM
11-22 00:46:28.861: W/dalvikvm(1069): threadid=1: thread exiting with uncaught exception (group=0xb3a22b90)
11-22 00:46:28.901: E/AndroidRuntime(1069): FATAL EXCEPTION: main
11-22 00:46:28.901: E/AndroidRuntime(1069): Process: com.contedevel.timetable, PID: 1069
11-22 00:46:28.901: E/AndroidRuntime(1069): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.contedevel.timetable/com.contedevel.timetable.settings.SettingActivity}: java.lang.RuntimeException: Subclasses of PreferenceActivity must override isValidFragment(String) to verify that the Fragment class is valid! com.contedevel.timetable.settings.SettingActivity has not checked if fragment com.contedevel.timetable.settings.SettingGeneralFragment is valid.
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2176)
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2226)
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.app.ActivityThread.access$700(ActivityThread.java:135)
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1397)
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.os.Handler.dispatchMessage(Handler.java:102)
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.os.Looper.loop(Looper.java:137)
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.app.ActivityThread.main(ActivityThread.java:4998)
11-22 00:46:28.901: E/AndroidRuntime(1069): at java.lang.reflect.Method.invokeNative(Native Method)
11-22 00:46:28.901: E/AndroidRuntime(1069): at java.lang.reflect.Method.invoke(Method.java:515)
11-22 00:46:28.901: E/AndroidRuntime(1069): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:777)
11-22 00:46:28.901: E/AndroidRuntime(1069): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:593)
11-22 00:46:28.901: E/AndroidRuntime(1069): at dalvik.system.NativeStart.main(Native Method)
11-22 00:46:28.901: E/AndroidRuntime(1069): Caused by: java.lang.RuntimeException: Subclasses of PreferenceActivity must override isValidFragment(String) to verify that the Fragment class is valid! com.contedevel.timetable.settings.SettingActivity has not checked if fragment com.contedevel.timetable.settings.SettingGeneralFragment is valid.
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.preference.PreferenceActivity.isValidFragment(PreferenceActivity.java:898)
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.preference.PreferenceActivity.switchToHeaderInner(PreferenceActivity.java:1179)
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.preference.PreferenceActivity.switchToHeader(PreferenceActivity.java:1199)
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.preference.PreferenceActivity.onCreate(PreferenceActivity.java:545)
11-22 00:46:28.901: E/AndroidRuntime(1069): at com.contedevel.timetable.settings.SettingActivity.onCreate(SettingActivity.java:33)
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.app.Activity.performCreate(Activity.java:5243)
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
11-22 00:46:28.901: E/AndroidRuntime(1069): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2140)
11-22 00:46:28.901: E/AndroidRuntime(1069): ... 11 more
11-22 00:46:35.781: I/Process(1069): Sending signal. PID: 1069 SIG: 9
...
11-22 00:48:23.931: D/(1218): HostConnection::get() New Host Connection established 0xb79f2080, tid 1218
11-22 00:48:24.101: W/EGL_emulation(1218): eglSurfaceAttrib not implemented
11-22 00:48:24.111: D/OpenGLRenderer(1218): Enabling debug mode 0
11-22 00:48:40.291: W/EGL_emulation(1218): eglSurfaceAttrib not implemented
11-22 00:48:42.081: D/dalvikvm(1218): GC_FOR_ALLOC freed 129K, 6% free 3560K/3768K, paused 53ms, total 69ms
11-22 00:48:42.271: D/AndroidRuntime(1218): Shutting down VM
11-22 00:48:42.271: W/dalvikvm(1218): threadid=1: thread exiting with uncaught exception (group=0xb3a22b90)
11-22 00:48:42.321: E/AndroidRuntime(1218): FATAL EXCEPTION: main
11-22 00:48:42.321: E/AndroidRuntime(1218): Process: com.contedevel.timetable, PID: 1218
11-22 00:48:42.321: E/AndroidRuntime(1218): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.contedevel.timetable/com.contedevel.timetable.settings.SettingActivity}: java.lang.RuntimeException: Subclasses of PreferenceActivity must override isValidFragment(String) to verify that the Fragment class is valid! com.contedevel.timetable.settings.SettingActivity has not checked if fragment com.contedevel.timetable.settings.SettingGeneralFragment is valid.
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2176)
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2226)
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.app.ActivityThread.access$700(ActivityThread.java:135)
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1397)
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.os.Handler.dispatchMessage(Handler.java:102)
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.os.Looper.loop(Looper.java:137)
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.app.ActivityThread.main(ActivityThread.java:4998)
11-22 00:48:42.321: E/AndroidRuntime(1218): at java.lang.reflect.Method.invokeNative(Native Method)
11-22 00:48:42.321: E/AndroidRuntime(1218): at java.lang.reflect.Method.invoke(Method.java:515)
11-22 00:48:42.321: E/AndroidRuntime(1218): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:777)
11-22 00:48:42.321: E/AndroidRuntime(1218): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:593)
11-22 00:48:42.321: E/AndroidRuntime(1218): at dalvik.system.NativeStart.main(Native Method)
11-22 00:48:42.321: E/AndroidRuntime(1218): Caused by: java.lang.RuntimeException: Subclasses of PreferenceActivity must override isValidFragment(String) to verify that the Fragment class is valid! com.contedevel.timetable.settings.SettingActivity has not checked if fragment com.contedevel.timetable.settings.SettingGeneralFragment is valid.
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.preference.PreferenceActivity.isValidFragment(PreferenceActivity.java:898)
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.preference.PreferenceActivity.switchToHeaderInner(PreferenceActivity.java:1179)
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.preference.PreferenceActivity.switchToHeader(PreferenceActivity.java:1199)
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.preference.PreferenceActivity.onCreate(PreferenceActivity.java:545)
11-22 00:48:42.321: E/AndroidRuntime(1218): at com.contedevel.timetable.settings.SettingActivity.onCreate(SettingActivity.java:33)
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.app.Activity.performCreate(Activity.java:5243)
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
11-22 00:48:42.321: E/AndroidRuntime(1218): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2140)
11-22 00:48:42.321: E/AndroidRuntime(1218): ... 11 more


Я не понимаю, что он просит переопределить, у меня OnCreate переопределена, и что за not checked?
Вот активити:
Кликните здесь для просмотра всего текста
Java
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
package com.contedevel.timetable.settings;
 
import java.util.Calendar;
import java.util.List;
 
import com.contedevel.timetable.MainActivity;
import com.contedevel.timetable.R;
import com.contedevel.timetable.helpers.SettingsHelper;
 
import android.annotation.TargetApi;
import android.app.ActionBar;
import android.app.DatePickerDialog;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.preference.Preference.OnPreferenceChangeListener;
import android.preference.Preference.OnPreferenceClickListener;
import android.view.MenuItem;
 
public class SettingActivity extends PreferenceActivity {
    //Initialization of variables
    SettingsHelper sh;
    Context context;
    
    @Override
    protected void onCreate (Bundle savedInstanceState) {
        
        super.onCreate(savedInstanceState);
        //Check Android version
        if(Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) {
            addPreferencesFromResource(R.xml.old_activity_preferences);
            Preference lvTimetableMode = (Preference) 
                    findPreference(getString(R.string.key_timetablemode));
            final Preference sOddWeek = (Preference) 
                    findPreference(getString(R.string.key_oddweek));
            sh = new  SettingsHelper(this);
            
            context = this;
            
            if(sh.getMode() == 1) {
                sOddWeek.setEnabled(true);
            }
            else {
                sOddWeek.setEnabled(false);
            }
            
            lvTimetableMode.setOnPreferenceChangeListener(new OnPreferenceChangeListener(){
 
                @Override
                public boolean onPreferenceChange(Preference preference,
                        Object newValue) {
                    // TODO Auto-generated method stub
                    if (newValue.toString().length() > 0) {
                        if(newValue.toString().equalsIgnoreCase("1")) {
                            sOddWeek.setEnabled(true);
                        }
                        else {
                            sOddWeek.setEnabled(false);
                        }
                        return true;
                    }
                    return false;
                }});
            
            sOddWeek.setOnPreferenceClickListener(new OnPreferenceClickListener() {
 
                @Override
                public boolean onPreferenceClick(Preference preference) {
                    // TODO Auto-generated method stub
                    Calendar c = Calendar.getInstance();
                    DatePickerDialog dpDialog = 
                            new DatePickerDialog(context, null, 
                                    2013, 8, 1);
                    dpDialog.setTitle(R.string.title_dialog_datepicker);
                    dpDialog.show();
                    return true;
                }});
        }
        else {
            ActionBar actionBar = getActionBar();
            actionBar.setDisplayHomeAsUpEnabled(true);
        }
    }
    
    //Headers for Android v11+
    @TargetApi(Build.VERSION_CODES.HONEYCOMB)
    public void onBuildHeaders (List<Header> target) {
        loadHeadersFromResource(R.xml.activity_preferenceheaders, target);
    }
    
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle item selection
        if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
            switch (item.getItemId()) {
            case android.R.id.home:
                Intent intent = new Intent(this, MainActivity.class);
                intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                startActivity(intent);
                return true;
            default:
                return super.onOptionsItemSelected(item);
            }
        }
        return super.onOptionsItemSelected(item);
    }
}

P.S. буду очень признателен за помощь
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru