안드로이드 개발 질문/답변
(글 수 45,052)
띄워논 appWidget의 특정 부분을 터치하면 해당 위젯의 내용이 바뀌는 앱을 만들고 있습니다.
일단 터치하면 내용이 바뀌는것 까진 완성을 했는데 문제는 내용이 바뀔때 띄워놓은 (같은 앱의)다른 위젯도 내용이 같이 바뀌어버립니다;;
인터넷을 뒤지다가 찾은게 위젯의 아이디값을 이용해서 특정 위젯의 내용만 바뀌게 하는 방법이었던거 같은데 적용해보니까 에러가 나네요;(밑에 /**/ 주석단 부분이 인터넷에서 찾은 내용입니다.)
혹시 방법 아시는분 답글 부탁드립니다 ㅠ
<주요 소스>
일단 터치하면 내용이 바뀌는것 까진 완성을 했는데 문제는 내용이 바뀔때 띄워놓은 (같은 앱의)다른 위젯도 내용이 같이 바뀌어버립니다;;
인터넷을 뒤지다가 찾은게 위젯의 아이디값을 이용해서 특정 위젯의 내용만 바뀌게 하는 방법이었던거 같은데 적용해보니까 에러가 나네요;(밑에 /**/ 주석단 부분이 인터넷에서 찾은 내용입니다.)
혹시 방법 아시는분 답글 부탁드립니다 ㅠ
<주요 소스>
@Override public void onReceive(Context context, Intent intent) { super.onReceive(context, intent); String action = intent.getAction(); /*Bundle extras = intent.getExtras(); int appWidgetId=extras.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID);*/
if(intent.getAction().equals(ACTION_CHANGE_TITLE)) { Toast.makeText(context, "ha", Toast.LENGTH_SHORT).show(); RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget43); if(status == true) { views.setTextViewText(R.id.TextViewWidgetTitleCategory, "Test1"); status = false; } else { views.setTextViewText(R.id.TextViewWidgetTitleCategory, "Test2"); status = true; } // Push update for this widget to the home screen ComponentName thisWidget = new ComponentName(context, Widget.class); AppWidgetManager manager = AppWidgetManager.getInstance(context); manager.updateAppWidget(thisWidget, views); } }