나는 다른 뷰와 그 중 ListView
을 포함하는 LinearLayout
을 가지고 있습니다. 이보기는 버튼을 클릭하여 다른보기에서로드됩니다.안드로이드리스트보기 scrollTo
이 단추는 어떻게 ListView에서 어떤 요소가 목록에서 처음으로 표시되어야하는지 지정합니다. 목록을 채우는 요소는 외부 서버에서 HTTP를 통해 검색됩니다.
문제는 N 번째 요소를 목록에서 첫 번째로 가져올 수 있다는 것입니다. 참고 : 현재 위치에서 새 위치로 이동하고 싶지는 않습니다. 목록을 스크롤하고 싶습니다.
나는 setSelected()
과 scrollTo(x,y)
및 scrollBy(x,y)
으로 시도했지만 행운은 없습니다. 그대로
는 또한 추악한로,이 코드 파이스 동전을 시도했다,하지만 난 그냥 일하는 그것을 f를 원했고 :
ListView categoryList = (ListView)findViewById(R.id.category_list);
categoryList.post(new Runnable() {
@Override
public void run() {
Log.d(this.getClass().getName(), "CategoryActivity.scrollToIndex: " + CategoryActivity.scrollToIndex);
if(CategoryActivity.scrollToIndex>0){
ListView categoryList = (ListView)findViewById(R.id.category_list);
categoryList.setScrollContainer(true);
categoryList.scrollTo(4, CategoryActivity.scrollToIndex * 50);
categoryList.requestLayout();
}
}
});
을 그리고 이것은 나에게 약간의 성공을 만들었지 만의 ListView 그 때 행동하고 있었다 미친 것 나는 심지어 기술 할 수 없다. ...
어떤 생각?
감사합니다. – 0m4r
또한 setSelected를 시도해 보았지만 너무 효과가있었습니다. 그래서, 내 문제에 대한 해결책을 찾았습니다! 내가 분명히 이해하지 못했던 것은 이것이 왜 효과가 있는지입니다 : / – 0m4r