Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 29.03.2018
Сообщений: 6
1

Глобальная переменная типа TextView

21.01.2021, 14:11. Показов 1670. Ответов 2

Author24 — интернет-сервис помощи студентам
Написал приложение в котором по нажатию кнопки меняются цвет и размер у виджетов TextView. Затем создал функцию, при обращении к которой все виджеты принимают изначальные параметры. Возникла необходимость объявить переменные TextView глобальными:

Java
1
2
3
4
 public class Global {
        TextView textview1= (TextView)findViewById(R.id.textview1);
        TextView textview2 = (TextView)findViewById(R.id.textview2);
 }
Здесь функция возвращения к изначальному виду:

Java
1
2
3
4
5
6
public static void cancellation() {
        Global.textview1.setTextSize(20);
        Global.textview2.setTextSize(20);
        Global.textview1.setTextColor(Color.parseColor("#FF8C8888"));
        Global.textview2.setTextColor(Color.parseColor("#FF8C8888"));
}
и он пишет ошибку:
en: Non-static field 'textview1' cannot be referenced from a static context
ru: На нестатическое поле 'textview1' нельзя ссылаться из статического контекста

Вопрос в том, как объявить переменные, хранящие виджеты, глобальными, чтобы к ним обращаться из любого места программы?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.01.2021, 14:11
Ответы с готовыми решениями:

Глобальная переменная в Java
Подскажите нубу. Недавно начал изучать Java. У меня в методе onClick есть свич для обработки...

SetOnClickListener исчезает глобальная переменная
Помогите исчезает глобальная переменная //Здесь переменная выводится нормально Log.d(LOG_TAG,...

String-array resources, как глобальная переменная
Требуется помощь! У меня есть 16 массивов <string-array>, в активити, когда я хочу обратится к...

Обмен данными между Activity (одна глобальная переменная)
Добрый день, товарищи. Мой путь в андроиде только начинается, поэтому элементарные для Вас вещи...

2
1570 / 1168 / 426
Регистрация: 08.05.2012
Сообщений: 5,219
21.01.2021, 15:41 2
Лучший ответ Сообщение было отмечено aaaalex как решение

Решение

Объявить переменные в начале класса активити, проинициализировать в onCreate, класс Global удалить и никогда так не делать, у метода cancellation убрать static.
2
22 / 20 / 5
Регистрация: 29.02.2016
Сообщений: 590
25.01.2021, 17:40 3
Так сделай переменные static'ами, а в нужном месте их инициализируй. Такой подход называется "синглтоном". Но в таком виде - это бэд практис
0
25.01.2021, 17:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.01.2021, 17:40
Помогаю со студенческими работами здесь

Глобальная переменная, которую можно использовать в других Activity
Здравствуйте, интересует вопрос: как создать переменную, которую я смогу использовать в других...

Маска вывода в EditView (либо TextView) полей класса типа Date
И еще раз всем привет!) С наступающими праздниками! Подскажите пожалуйста по одному вопросу....

Текст из TextView перенести в другой TextView по нажатию Button
Люди, помогите плиз. Недавно начал ковырять программирование под Android. Хотел сделать банальную...

Как сделать вывод типа "25.000" в textView?
Добрый день! Подскажите, как сделать вывод в TextView числа в таком формате, чтоб три нуля...

Переменная типа Uri
программа у меня при запуске предлагает выбрать фото из произвольного местал, после выбора я...

Глобальная или статическая переменная не может быть управляемого типа
Visual C++ 2008 Хочу создать глобальную переменную своего собственного класса. Натыкаюсь на...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru