我希望将ImageView
的位置固定在原生Android应用中,也就是说,当用户滚动时它不应该移动。
换句话说,我想要在网页中使用css position:fixed
发生同样的效果。
布局代码如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ui.ProductDetailActivity">
<ImageView
android:id="@+id/product_image"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight=".5"/>
<TableLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight=".5"
android:layout_margin="@dimen/activity_horizontal_margin">
<TableRow>
<TextView
android:id="@+id/product_model_label"
android:layout_width="match_parent"
android:layout_height="32dp"
android:text="@string/product_model_label"
style="@style/ProductDetail"/>
<TextView
android:id="@+id/product_model"
android:layout_width="match_parent"
android:layout_height="32dp"/>
</TableRow>
</TableLayout>
我希望TableLayout
滚动图片。
注意:我的实际布局文件有更多的表行。
答案 0 :(得分:0)
在滚动视图外添加图片视图。看看这个例子
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.sensor.MainActivity"
tools:ignore="MergeRootFrame" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher"
android:layout_gravity="center"/>
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="test"
android:padding="100dp"
android:layout_gravity="center"
android:textAppearance="?android:attr/textAppearanceLarge" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="test 1"
android:padding="50dp"
android:layout_gravity="center"
android:textAppearance="?android:attr/textAppearanceLarge" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="test 2"
android:padding="50dp"
android:layout_gravity="center"
android:textAppearance="?android:attr/textAppearanceLarge" />
</LinearLayout>
</ScrollView>
</LinearLayout>
</FrameLayout>
答案 1 :(得分:0)
使用相对布局。 。
<ImageView
android:id="@+id/product_image"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"/>
你可以添加其他参数,如alignParentLeft,center_Horizontal等。