Я боролся с этой проблемой, высмеиваю количество времени сейчас. У меня есть 5 расширяемых списков, которые содержат информацию для каждого дня недели, и я могу пролистывать между ними. Все работает просто отлично, за исключением того, что когда я начинаю занятие, я хочу, чтобы текущее представление списка автоматически прокручивалось вниз (не пользователем) до текущего дня. И с этим НИЧЕГО не происходит.
SSCCE:
public void Test()
{
for (int i = 0; i < this.numberOfWeeks; i++)
{
// Relative layout to represent the current visible area
RelativeLayout screen = new RelativeLayout(this);
//LayoutParameters for the screen, fills the whole screen
RelativeLayout.LayoutParams newParams = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.FillParent, RelativeLayout.LayoutParams.FillParent);
screen.Id = 1000;
screen.LayoutParameters = newParams;
//An ExpandableListView is created with some parameters not important for this example
ExpandableListView newEListView = this.CreateExpandableListView( //..params..// )
screen.AddView(newEListView);
// Set this newEListView to the array of expandablelistviews
this.expandableListViews[i] = newEListView;
}
// Some more stuff is done, and finally when data is loaded and everything shows up just fine..
// Lets make it automatically scroll down to the current day!
// This does nothing
this.expandableListViews[3].SetSelection(4); // 4 is current day
// Same here
this.expandableListViews[3].SetSelectionFromTop(4, 200);
}
Стоит упомянуть, что ручная прокрутка работает просто отлично ..