안녕하세요.
요즘에 특정 값에 따라 모습이 바뀌는 위젯을 만들고 있는데요.
여기서 막히는지라 질문드립니다.
public void onUpdate( Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds )
{
updateAppWidget(context, appWidgetManager, appWidgetId);
}
onUpdate에서 updateAppWidget()을 실행했구요
public static void updateAppWidget(Context context, AppWidgetManager appWidgetManager, int appWidgetId)
{
RemoteViews updateViews = new RemoteViews(context.getPackageName(), R.layout.appwidgetmain);
updateViews.setImageViewResource(R.id.wiget, R.drawable.attr_superfat); // 위젯 그림을 변경하는 코드인데
}
여기서
if(answer == 0){
updateViews.setImageViewResource(R.id.wiget, R.drawable.attr_superfat);
}
else if(answer == 1){
updateViews.setImageViewResource(R.id.wiget, R.drawable.attr_superslim);
}
.
.
.
이런식으로 나가고 싶은데
myPrefs = getSharedPreferences("AppPrefs", 0);
sqlDataContext = SQL클래스.getInstance(this);
프리퍼런스로 불러오는 것도 안먹히고 SQL 가져오는것도 안되네요.
아마도 클래스가 AppWidgetProvider를 상속받아서 그런 것 같은데
방법이 있을까요? 조언 부탁드립니다..





prefs = PreferenceManager.getDefaultSharedPreferences(context); 로 this를 참조시키세요. . 구지 디폴트 안써도 되긴하는데 preferenceactivity값 가져다 쓰려면 디폴트 쓰셔야 합니다.