2011-09-22 2 views
0

AppWidgetHostView로 설치된 AppWidgetView를 내 응용 프로그램에 추가하고 있습니다. 문제는 홈 화면에 추가 된 터치 이벤트를 처리하지 않는다는 것입니다. 여기 내 코드의 일부입니다; AppWidgetProvider가 터치 이벤트 문제를 처리합니다.

AppWidgetHost host = new AppWidgetHost(getContext(), HOST_ID); 
AppWidgetManager manager = AppWidgetManager.getInstance(getContext()); 

int id = host.allocateAppWidgetId(); 
AppWidgetHostView view = host.createView(getContext(), id, info); 


는 안드로이드의 기본 아날로그 시계 위젯입니다 "com.android.alarmclock.AnalogAppWidgetProvider을"에 속하는 AppWidgetProviderInfo 오브젝트 "정보"를 말할 수 있습니다. 이보기는 홈 화면에서 수행 된 클릭을 수행 할 때 시계 설정을 실행해야하는데 아직 응답이 없습니다. 이 문제를 해결할 방법이 있습니까? 미리 감사드립니다 ...

+0

을 나는 비슷한 문제를 가지고 (appwidgethostview 긴 클릭 이벤트를받지 않습니다) http://stackoverflow.com/questions/24074372/appwidgethostview-cant-handle-onclick-onlongclick -properly – hungson175

답변

0

귀하의 질문에 대한 답변이 확실하지 않습니다.

android 홈 화면에서 onClick 이벤트를 처리하기 위해 PendingIntent를 사용하여 setOnClick 비헤이비어를 사용합니다.

Intent iText = new Intent(this, urTargetActivity.class); 
PendingIntent pendingText = PendingIntent.getActivity(context,0, iText,0); 
views.setOnClickPendingIntent(R.id.textView1,pendingText); 

나는 AppWidgetHostView 함께 사용하지만, 내가 전에했던 방식으로는 아무 문제없이 작동하고 구성 활동 페이지를 호출 서비스를 사용하고 확실하지 않다.

희망이 어떻게 든 당신을 도울 수 :

+0

Fon의 답변 주셔서 감사합니다. 일주일 동안 내 작업 공간을 벗어날 것이기 때문에 여전히 작동하는지 여부를 확인할 수 없습니다. 일단 돌아 오면 PendingIntents에 대한 귀하의 제안을 시도해 보겠습니다. 여전히 한 가지가 궁금합니다. 여기 내 예에서는 Google에서 개발 한 appWidget을 사용했습니다. appWidget은 "R.id.textView1"과 같은 위젯 요소의 ID에 액세스하지 못하게 할 것입니다. 이 문제를 해결할 방법이 있습니까? –

+0

Fon i 시험을 마쳤습니다. 위젯이 이벤트 처리를 위해 기본 Android 홈 스크린 시작 프로그램에서 작동하는 PendingIntent 항목을 구현해야한다고해도 Android 런처 구현이 실행되지 않습니다 ... AndroidManifest에 추가해야하는 권한 또는 유사 항목 일 수 있습니다. xml, 나는 그걸 파헤쳐 야겠다. 결국, 당신의 대답은 나의 질문에 대해 무효하다. StackOverflow 도와주세요! :) –

+0

그래서 우리는 AppWidgetHostView에서 pendingIntent를 사용할 수 있습니까? LogCat에서 얻은 오류는 무엇입니까? 나는 그것에 대해서도 궁금하다. 공유 하시겠습니까? 감사... – Fon