Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
1

Как при обновлении виджета получить настройки и применить их

03.11.2012, 16:06. Показов 1139. Ответов 2
Метки нет (Все метки)

Доброго времени.
Создаю виджет, который отображает кол-во дней от некой начальной даты. (просто так для изучения).
При первом создании виджета на рабочем столе планируется открыть окно настроек где будет указана эта начальная дата. По кнопке Применить данные сохраняются в файл xml используя android.content.SharedPreferences.Editor;
В самом виджете в методе onUpdate хочу эти настройки считать ну и собственно получить разницу в днях и вывести их на виджет.
Проблема: не могу инициализировать объект класса SharedPreferences:
mSettings = getSharedPreferences(FILE_NAME, Context.MODE_PRIVATE);
eclipse пишет следующее: "The method getSharedPreferences(String, int) is undefined for the type WidgetActivity". Что мне написать, что для класса AppWidgetProvider этот метод стал известным.
Может я вообще все не правильно задумал и это делается как то иначе?
Спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.11.2012, 16:06
Ответы с готовыми решениями:

Как сделать, чтобы при обновлении приложения в Google Play сохранялись пользовательские настройки и данные
Как сделать, чтобы при обновлении приложения в Google Play сохранялись пользовательские настройки и...

Как сохранить настройки приложения при обновлении?
Как сохранить настройки приложения при его обновлении в marketplace? И как это можно проверить?

Как навести мышку на x,y внутри виджета относительно 0,0 виджета (левого верхнего угла виджета)?
Как навести мышку на x,y внутри виджета относительно 0,0 этого виджета (левого верхнего угла...

Как применить настройки для Explorer'a?
Типа изменяешь что-то в св-вах обозревателя и нажимаешь кнопку Применить, только програмно?

2
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
03.11.2012, 17:06 2
сам виджеты никогда не делал, но вот что нагуглил

getSharedPreferences(), should you choose to use it, is only available on subclasses of Context, like Activity or Service. AppWidgetProvider is a subclass of BroadcastReceiver, which is not a Context.

That being said, if you are going to use the PreferenceScreen system, or if you are not certain that it's gotta gotta gotta be getSharedPreferences(), I would use PreferenceManager.getDefaultSharedPreferences() instead. Those are the SharedPreferences that PreferenceScreen/PreferenceActivity will use.
здесь советуют использовать статический метод PreferenceManager.getDefaultSharedPreferences()

Добавлено через 1 минуту
еще такое


You should have been passed a context in widget's onUpdate() method so you can call context.getSharedPreferences().
в AppWidgetProvider есть методы, например onUpdate, получающие context, вот к нему вызывать context.getSharedPreferences()
1
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
03.11.2012, 20:39  [ТС] 3
Воспользовался последней подсказкой. Все получилось. Спасибо.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.11.2012, 20:39

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Как применить настройки без перезапуска приложения
Здравствуйте! Ситуация следующая, в процессе работы программа записывает некоторую информацию в...

Как применить настройки только к конкретному слайдеру (CSS)?
Сайт на WP с пэдж билдером. У меня были проблемы со слайдером, он не был в размер экрана. Я...

Чтение URL адресса из окна виджета и открытие его браузером при нажатии кнопки виджета
#Как считать url со строки ввода в виджете что бы потом при нажатии кнопки виджета открыть этот...

Как получить значение выбора параметра виджета Scale?
как получить значение выбора параметра виджета Scale? from tkinter import * root = Tk()...

Как применить все необходимые настройки "на лету", без перезапуска программы
Есть проект на C# + WPF, имеются два окна: MainWindow и SettingsWindow. Необходимо чтобы после...

Применить настройки из файла
Как применить настройки из файла? Например цвет формы И главное записать измененные настройки...


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

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

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