我有一些动态列表,在某些输入上增长我也有选项卡和它上面的一些布局。我想滚动它们以及列表增长。 简单来说,只是不加载完整列表,但滚动其他东西作为我滚动列表。 我正在做这样的事情。
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TabHost
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0"
android:dividerPadding="5dp"
android:orientation="horizontal" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="0" />
<FrameLayout
android:id="@+android:id/realtabcontent"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1" />
</LinearLayout>
</TabHost>
</ScrollView>
请注意 我也想滚动标签。 我目前正在使用此代码
public static class Utility {
public static void setListViewHeightBasedOnChildren(ListView listView) {
ListAdapter listAdapter = listView.getAdapter();
if (listAdapter == null) {
// pre-condition
return;
}
int totalHeight = 0;
for (int i = 0; i < listAdapter.getCount(); i++) {
View listItem = listAdapter.getView(i, null, listView);
listItem.measure(0, 0);
totalHeight += listItem.getMeasuredHeight();
}
ViewGroup.LayoutParams params = listView.getLayoutParams();
params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
listView.setLayoutParams(params);
}
}
用于制作列表视图,但是当我加载屏幕时,它会从列表中聚焦屏幕,而不是从选项卡中聚焦。任何人都知道如何从顶部开始关注它 请帮忙
答案 0 :(得分:0)
您的ListView将始终独立于其他列表滚动。如果你想让所有东西都滚动在一起,那么你需要看一下使用LinearLayout模仿ListView并将每一行添加到布局中。然后,这将强制布局粘附到外部滚动视图容器。