在我的Android应用程序页面中,我使用了一个滑块,textview和一个gridview来显示图像。现在的问题是,当我向上滚动时,只有gridview图像滚动,其余的东西保持静止。请帮助我如何在滚动时让页面的所有内容都移动?
DetailViewController
答案 0 :(得分:2)
将所有代码放在滚动视图中,使用以下代码
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ViewFlipper
android:id="@+id/viewFlipper1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/one" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/two" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/three" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/banner1" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/banner2" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/banner3" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/banner4" />
</ViewFlipper>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Shop For"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_marginLeft="100dp" />
<GridView
android:id="@+id/gridView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:columnWidth="150dp"
android:gravity="center"
android:horizontalSpacing="1dp"
android:numColumns="2"
android:padding="28dp"
android:stretchMode="none"
android:verticalSpacing="1dp"
android:visibility="visible" />
</LinearLayout>
</ScrollView>
如果您有任何问题,请随时发表评论。
答案 1 :(得分:1)
修改你的布局xml文件,如下所示,它会解决你的问题,我想。
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<ViewFlipper
android:id="@+id/viewFlipper1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/one" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/two" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/three" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/banner1" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/banner2" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/banner3" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="150dp"
android:src="@drawable/banner4" />
</ViewFlipper>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Shop For"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_marginLeft="100dp" />
<GridView
android:id="@+id/gridView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:columnWidth="150dp"
android:gravity="center"
android:horizontalSpacing="1dp"
android:numColumns="2"
android:padding="28dp"
android:stretchMode="none"
android:verticalSpacing="1dp"
android:visibility="visible" >
</GridView>
</LinearLayout>
</ScrollView>
这可能是因为您没有使用ScrollView
。 ScrollView
应该只包含一个子视图。因此,使用LinearLayout
作为所有其他视图的父视图,并将此LinearLayout
用作ScrollView
的子视图。
此外Gridview
本身也是Scrollview
,因此在您的情况下GridView
正在滚动但其他视图未滚动。