我的应用程序中有一个gridview,我可以动态增加其高度。但我的问题是,每当我增加高度,滚动条就会滚动到页面的中心。什么可能导致这个问题?以下是我的代码:
Axml:
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:background="#e1effa">
<GridView
android:id="@+id/gvPhones"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:verticalSpacing="5dp"
android:drawSelectorOnTop="true"
android:stretchMode="columnWidth" />
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
Cs:
_mySimpleItemLoader = new LoadRecords();
_mySimpleItemLoader.LoadMoreItems();
gvPhone = FindViewById<GridView>(Resource.Id.gvPhones);
_gridviewAdapter = new PhonesAdapter(this, _mySimpleItemLoader, this);
gvPhone.Adapter = _gridviewAdapter;
gvPhone.LayoutParameters.Height = 777 * gvPhone.Count;
答案 0 :(得分:1)
但我的问题是,每当我增加高度时,滚动条就会滚动到页面的中心。
当您打开Activity
时,某些控件需要关注。但是在您的.axml
布局中没有指定的控件可以获得焦点,系统会选择第一个需要关注的合格控件。
当您在android:focusableInTouchMode="true"
中设置LinearLayout
属性时,您的LinearLayout
将专注于开始,而NestedScrollView
将不会滚动到页面的中心。