使用LinearLayout在屏幕外部设置ImageView

时间:2011-02-21 18:33:10

标签: android imageview android-linearlayout android-2.2-froyo absolutelayout

我正在开发Android 2.2应用程序。

我有一个带有textview,一个按钮和一个ImageView的线性布局。

我想在屏幕外设置此imageview并设置动画以从左向右移动。

我想模拟一艘从左向右移动的船。用户将看到它从屏幕左侧出现并从右侧消失。

我知道我可以使用AbsoluteLayout为ImageView设置layout_x,但我不想为其他视图(textview和按钮)设置layout_x和layout_y,因为它们位于屏幕中心。

1 个答案:

答案 0 :(得分:2)

这就是我解决问题的方法:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical">
    <TextView 
        android:id="@+id/appNameTextView"
        android:text="@string/app_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="40px"/>
    <Button
        android:id="@+id/PlayButton"
        android:text="@string/play"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="40px"/>
    <AbsoluteLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        xmlns:android="http://schemas.android.com/apk/res/android">
        <ImageView
            android:id="@+id/greekShip"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/picture"
            android:maxWidth="176px"
            android:maxHeight="87px"
            android:layout_x="-200px"/>
    </AbsoluteLayout>
</LinearLayout>