안녕하세요.
위젯을 만들고 있는데요.
위젯이 클릭되면 위젯 편집 엑티버티를 띄우려고 합니다.
AppWidgetProvider를 상속받은 클래스의 onReceive() 함수에서
엑티버티를 호출까지는 했는데요.
클릭된 위젯의 id를 알아야 하는데 어떻게 하면 알 수 있는지 알려주시면 감사드리겠습니다. :)
setOnClickPendingIntent 지정하실 때 intent 에
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId); 이런식으로 넣어 주시고
(pendingintent flag 는 FLAG_UPDATE_CURRENT 로
intent flag 는 intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 이렇게 해주시구요)
OnReceive에서
Bundle extras = intent.getExtras();
int appWidgetId = extras.getExtra(AppWidgetManager.EXTRA_APPWIDGET_ID);
이런식으로 부르면 될 것 같습니다.
PendingIntent에서 requestcode를 id로 해줘야 하는군요 ㄱ-;;;;;
boyhs님 답변 정말 감사합니다. (__)
어떻게 해결하셨는지좀 알수없을가요?
Bundle에는 getExtra가없다는데 ㅠ
로그인 유지
setOnClickPendingIntent 지정하실 때 intent 에
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId); 이런식으로 넣어 주시고
(pendingintent flag 는 FLAG_UPDATE_CURRENT 로
intent flag 는 intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 이렇게 해주시구요)
OnReceive에서
Bundle extras = intent.getExtras();
int appWidgetId = extras.getExtra(AppWidgetManager.EXTRA_APPWIDGET_ID);
이런식으로 부르면 될 것 같습니다.