2014-01-17 2 views
0

그래서 첫 번째 안드로이드 위젯을 개발 중이며 주로 ListView으로 구성되어 있습니다. RemoteViewsFactory을 사용하여 잘 작동하는 목록보기를 채우지 만 목록의 선택된 색인을 기본값으로 설정하는 데 문제가 있습니다.안드로이드 위젯 : ListView의 setSelection

일반적으로 ListView#setSelection은 정상적으로 작동하지만이 경우에는 (RemoteViews 사용) 전혀 수행하지 않는 것 같습니다.

나는이 그 일을 할 수있는 잘못된 장소이지만, AppWidgetProvider#onUpdate에 내가 뭘 확신 다음

RemoteViews widget = new RemoteViews(context.getPackageName(), R.layout.widget); 
widget.setRemoteAdapter(R.id.widget_list, svcIntent); 

Log.i(TAG, "Setting selection: " + position); 
widget.setInt(R.id.widget_list, "setSelection", position); 

나는 목록이 채워되지 않았기 때문에이 작동하지 않습니다 있으리라 믿고있어 그러나 콜렉션 뷰의 비동기 성질로 인해서, 그러나 내가 어디에 넣을 지 모르겠습니다.

목표는 처음으로 사용자가 위젯을보고 상호 작용하기 전에 그리고 목록이 변경 될 때마다 (시간별) 목록이 특정 항목으로 스크롤된다는 것입니다.

도움이 될 것입니다.

답변

1

widget.setScrollPosition (R.id.widget_list, position);

+2

이 대답을 약간 확장해야합니다. 한 줄의 코드는 정확하지만 일반적으로 OP에 큰 도움이되지는 않습니다. – indivisible