Установите ImageView вне экрана с помощью LinearLayout - PullRequest
0 голосов
/ 21 февраля 2011

Я занимаюсь разработкой приложения для Android 2.2.

У меня есть линейный макет с текстом, кнопкой и ImageView.

Я хочу установить это изображение за пределами экрана и установить анимацию для его перемещения слева направо.

Я хочу смоделировать движение корабля слева направо. Пользователь увидит, что он появляется с левой стороны экрана и исчезает с правой стороны.

Я знаю, что могу использовать AbsoluteLayout, чтобы установить layout_x для ImageView, но я не хочу устанавливать layout_x и layout_y для других представлений (textview и button), потому что они центрированы на экране.

1 Ответ

2 голосов
/ 21 февраля 2011

Вот как я решил свою проблему:

<?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>
...