0

「footer.xml」を呼び出す 2 つのレイアウトがあります。1 つ目は「login.xml」、2 つ目は「main.xml」です。

アプリケーションを開くと、onCreate メソッドによってコンテンツ ビューが login.xml に設定されます。ログインに成功すると、main.xml がロードされます (成功)。

さて、ここで問題です。

ユーザーのログイン後に main.xml がコンテキスト ビューとして設定されている場合、フッターは繰り返されず、引き伸ばされます。

login.xml と main.xml は footer.xml を同じように呼び出すので、なぜだろうと思っています。

この問題に関する解決策はありますか?

ちなみに、こちらがfooter.xml

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="@drawable/footer"
    android:tileMode="repeat" />

これは、login.xml と main.xml で footer.xml を呼び出す方法です。

    <LinearLayout android:id="@+id/footer"
        android:layout_width="fill_parent"
        android:layout_height="90dip"
        android:background="@layout/footer"
        android:layout_alignParentBottom="true">

    </LinearLayout>

編集:

ホームボタンを押してアプリを再開すると、フッターが修正されることがわかりました。ただし、タスク マネージャーを使用してアプリを閉じてから再度開いても、背景画像は繰り返されません。これを解決する方法は?

4

1 に答える 1

0

解決策を見つけました!

これは私の login.xml と main.xml のようです:

<LinearLayout android:id="@+id/footer"
    android:layout_width="fill_parent"
    android:layout_height="90dip"
    android:background="@layout/footer"
    android:layout_alignParentBottom="true">

</LinearLayout>

本当に同じなので、IDも同じです。

私の解決策は、すべての xml ファイルの ID を変更することでした。

login.xml については、

<LinearLayout android:id="@+id/loginFooter"
    android:layout_width="fill_parent"
    android:layout_height="90dip"
    android:background="@layout/footer"
    android:layout_alignParentBottom="true">

</LinearLayout>

main.xml については、

<LinearLayout android:id="@+id/mainFooter"
    android:layout_width="fill_parent"
    android:layout_height="90dip"
    android:background="@layout/footer"
    android:layout_alignParentBottom="true">

</LinearLayout>

これを行うことで、それは私の問題を解決しました!しかし、レイアウトで同じIDを持つコンパイル時にEclipseがエラーを返さない理由がわかりません。

于 2012-12-04T17:47:12.513 に答える