Страница 1 из 1

Вопрос по java

Добавлено: 14 окт 2014, 18:08
bartle96
Привет всем! Хотел спросить по java
Вот мы использовали это, что бы отловить нажатия нескольких кнопок

Код: Выделить всё

            @Override
            public void onClick(View v) {
                switch (v.getId()) {
                    case R.id.enter:
                        textedit.setText("Нажата кнопка 1...");
                        break;
                    case R.id.but2:
                        textedit.setText("Нажата кнопка 2...");
                        break;

                }
            }
        };
Как так же отловить переключения нескольких CheckBoxPreference
Я использую эту конструкцию

Код: Выделить всё

chb2 = (CheckBoxPreference) findPreference("chbsw2");
        chb2.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
            public boolean onPreferenceClick(Preference preference) {
                
                ...

                return false;
            }
        });
Но это только для одного CheckBox'a ...(((

Re: Вопрос по java

Добавлено: 15 окт 2014, 15:21
bartle96
Люди, где же вы((

Re: Вопрос по java

Добавлено: 15 окт 2014, 15:47
Foenix
да никто просто не знает что такое OnPreferenceClickListener

Re: Вопрос по java

Добавлено: 15 окт 2014, 16:07
Mikhail_dev
Может это поможет - http://stackoverflow.com/a/6496492

Re: Вопрос по java

Добавлено: 16 окт 2014, 11:38
bartle96
Хорошо, а как узнать состояние CheckBoxPreference? getDependency не то. Читал Help не нашел(
Интересное, что для ListPreference getValue работает, а для CheckBoxPreference нет(

Re: Вопрос по java

Добавлено: 16 окт 2014, 11:53
KamiSempai
bartle96 писал(а):Хорошо, а как узнать состояние CheckBoxPreference? getDependency не то. Читал Help не нашел(
Интересное, что для ListPreference getValue работает, а для CheckBoxPreference нет(
[syntax=java]((CheckBoxPreference) preference).isChecked()[/syntax]

Re: Вопрос по java

Добавлено: 16 окт 2014, 17:13
bartle96
Спасибо за ответы)

Еще один вопросик. В активити настроек для ловли изменений
я использую это:

Код: Выделить всё

       SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
        SharedPreferences.OnSharedPreferenceChangeListener prefListener = new SharedPreferences.OnSharedPreferenceChangeListener()
        {
            @Override
            public void onSharedPreferenceChanged( SharedPreferences sharedPreferences, String key )
            {
                Log.w(LOG_TAG, "Pref key: " + key);
            }
        };
        sharedPrefs.registerOnSharedPreferenceChangeListener( prefListener );
Но это срабатывает не всегда. Вернее работает работает и перестает. Как будто устает(
В чем может быть причина?

Re: Вопрос по java

Добавлено: 16 окт 2014, 17:18
bartle96
А нет, сейчас эти маленькие гномики которые живут внутри телефона вовремя читаю заклинания.