Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,071
#1

Найти Button в PreferenceActivity - Программирование Android

05.01.2016, 01:02. Просмотров 286. Ответов 6
Метки нет (Все метки)

Надо скрыть кнопку в PreferenceActivity. Не могу ее поймать, почему то null.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class SettingsActivity extends PreferenceActivity {
    public static class AboutPreferenceFragment extends PreferenceFragment {
        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
            View result = super.onCreateView(inflater, container, savedInstanceState);
            if (result != null) {
                View lv = result.findViewById (android.R.id.list);
                Button  button = (Button) lv.findViewById(R.id.upgrade);
                button.setVisibility(Button.GONE); //  java.lang.NullPointerException
            }
            return result;
        }
 
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            addPreferencesFromResource(R.xml.pref_about);
            Preference aboutPref = (Preference) findPreference("about");
            aboutPref.setLayoutResource(R.layout.activity_about_);
        }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.01.2016, 01:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти Button в PreferenceActivity (Программирование Android):

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

PreferenceActivity - Программирование Android
Собственно сабж. Имеется приложение, для которого нужно создать PrefereneActivity. Для настроек этого же приложения. ...

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

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

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

Как в Android положить один объект (button) на другой (button)? - Программирование Android
Скажите, как можно положить один объект на другой, так что бы они оба были кликабельными? У менять есть две кнопки примыкающие друг к...

6
_Night_Scream_
76 / 75 / 8
Регистрация: 08.08.2013
Сообщений: 612
05.01.2016, 10:50 #2
findPreference надо использовать наверное.
1
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,071
06.01.2016, 14:27  [ТС] #3
Цитата Сообщение от _Night_Scream_ Посмотреть сообщение
findPreference надо использовать наверное.
Не получается...
Я в стандартный PreferenceFragment засунул layout c button и textview.
Клик через public void onMyButtonClicked(View arg0) работает норм, а в onCreate получить button не соображу как.
0
Pablito
2534 / 2013 / 627
Регистрация: 12.05.2014
Сообщений: 7,063
Завершенные тесты: 1
06.01.2016, 15:23 #4
может ее искать надо так ?
Button button = (Button) result.findViewById(R.id.upgrade);
0
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,071
06.01.2016, 15:44  [ТС] #5
Паблито, не, так тоже пробовал.
Java
1
2
3
4
5
LayoutInflater viewInflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View mRowView = viewInflater.inflate(R.layout.activity_about_, null, false);
Button b1 = (Button) mRowView.findViewById(R.id.upgrade);
log("button " + b1.getText());
b1.setVisibility(View.GONE);
Вот таким образом кнопка находится, getText() выводит текст. Но setVisibility не работает почему-то.

Добавлено через 2 минуты
И с кнопкой ничего не дает сделать. setText тоже не работает.
0
_Night_Scream_
76 / 75 / 8
Регистрация: 08.08.2013
Сообщений: 612
06.01.2016, 15:45 #6
Rube, а зачем понадобилось пихать layout в PreferenceActivity?
0
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,071
06.01.2016, 16:41  [ТС] #7
_Night_Scream_,
Например в планшетах где места много и PreferenceActivity состоит из двух панелей. Там кнопка сама просится.
В обычных телефонах там да, кнопка на другой активити находится.

Добавлено через 45 минут
Тут такая же проблема, как я понял решения нет.
Мне надо при определенных условиях скрывать эту кнопку. Пока решение - использовать разные layout.
0
06.01.2016, 16:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.01.2016, 16:41
Привет! Вот еще темы с ответами:

RelativeLayout + Button - Программирование Android
Народ как лучше делать разметку в xml Есть RelativeLayout (с картинкой в background) и на нем надо расположить Button, в определенном...

Canvas и Button - Программирование Android
можно ли в канвасе на холсте разместить view-элементы? кнопки к примеру или textview.

Button вызов - Программирование Android
Народ, мне нужно сделать кнопку, которая при нажатии совершает вызов. в main.xml кнопку добавил, а в MainActivity не могу додуматься что...

Массив button - Программирование Android
Здравствуйте! У меня на xml-форме есть семь кнопок, как мне их в коде определить как массив с 7-ю элементами, чтобы я мог обрабатывать их...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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