我有一个使用 CursorAdapter 填充列表的 ListActivity 类。 我需要做的是根据列表中元素的值,让 View 向下滚动到列表中的特定元素。
该列表是带有“截止日期”的项目列表,如果截止日期已经过去,我希望 View 滚动过去。因此,在启动时,用户将在顶部看到到期日期最近的项目( View 将滚动到该项目)。如果他们想查看过期日期,可以向上滚动。
我希望我能正确解释这一点,我只是想隐藏我的 ListActivity 中的项目,如果它们的截止日期已经过去,当然是基于 Activity 启动的时间。
最佳答案
这个有效:
ListView list = getListView();
int count = list.getCount();
long now = new GregorianCalendar().getTimeInMillis();
int scrollTo = 0;
for ( int i = 0; i < count; i++ ) {
Cursor cursor = (Cursor)list.getItemAtPosition( i );
long endtime = cursor.getLong( "endtime" );
if ( endtime > now ) {
//this is the one we want to scroll to
scrollTo = i;
break;
}
}
temp.setSelection( scrollTo );
关于android - 如何滚动到 ListActivity 中的子元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5342037/