位置:修复等效于android?

时间:2014-07-12 06:50:28

标签: android android-layout

我希望将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滚动图片。

注意:我的实际布局文件有更多的表行。

2 个答案:

答案 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_Horizo​​ntal等。