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

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

03.11.2012, 16:06. Просмотров 1056. Ответов 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
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.11.2012, 16:06
Ответы с готовыми решениями:

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

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

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

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

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

2
V0v1k
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
dubok79
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
03.11.2012, 20:39  [ТС] 3
Воспользовался последней подсказкой. Все получилось. Спасибо.
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.11.2012, 20:39

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

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

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


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

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

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