FrameView с «перевернутыми» анимационными изображениями без уменьшения - PullRequest
1 голос
/ 10 января 2012

Кажется, я не могу понять, в чем я ошибся ...

У меня есть карточная игра, которую я строю, с переворачивающейся картой и несколькими текстовыми представлениями ниже, которые отображают информацию.

У меня есть следующий макет main.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/layout_main"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/background"
    android:orientation="vertical" >

    <FrameLayout
        android:id="@+id/container"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="6" >

        <include
            android:id="@+id/frameview1"
            layout="@layout/first_card" />

        <include
            android:id="@+id/frameview2"
            layout="@layout/second_card" />
    </FrameLayout>

    <TextView
        android:id="@+id/text_mainMessage"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_gravity="center"
        android:layout_weight="2"
        android:text="@string/resetMessage"
        android:textColor="#FF0000"
        android:textSize="23sp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/text_subMessage"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_gravity="center"
        android:layout_weight="2.5"
        android:minLines="3"
        android:textColor="#FFFFFF"
        android:textSize="16sp" />

    <RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:gravity="center">

        <TextView
            android:id="@+id/text_cardsRemainingLabel"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_marginLeft="10dip"
            android:text="@string/cardsRemainingLabel"
            android:textColor="#FFFFFF"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/text_cardsRemaining"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignTop="@id/text_cardsRemainingLabel"
            android:layout_marginLeft="2dip"
            android:layout_toRightOf="@id/text_cardsRemainingLabel"
            android:text="@string/cardsRemainingInitial"
            android:textColor="#FFFFFF"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/text_kings"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_alignTop="@id/text_cardsRemainingLabel"
            android:layout_marginRight="10dip"
            android:text="@string/kingsInitial"
            android:textColor="#FFFFFF"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/text_kingsLabel"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignTop="@id/text_cardsRemainingLabel"
            android:layout_marginRight="2dip"
            android:layout_toLeftOf="@id/text_kings"
            android:text="@string/kingsLabel"
            android:textColor="#FFFFFF"
            android:textStyle="bold" />
    </RelativeLayout>
</LinearLayout>

У меня также есть следующие два XML-файла, которые содержат изображения карты для «до» и «после» флип в FrameViewсогласно http://www.inter -fuser.com / 2009/08 / android-animations-3d-flip.html :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <ImageView
        android:id="@+id/btn_card"
        android:layout_width="wrap_content"
        android:layout_height="0dip"
        android:layout_margin="5dip"
        android:layout_gravity="center"
        android:scaleType="centerInside"
        android:layout_weight="6"
        android:background="@drawable/empty"
        android:contentDescription="@string/cardImageDesc"
        android:src="@drawable/card_back_rof" />

</LinearLayout>

(first_card.xm и second_card.xml идентичныза исключением значения идентификатора)

Теперь для решения проблемы: файлы изображений, которые я использую, имеют высоту около 350 пикселей, и, несмотря на использование layout_weight на моем основном LinearLayout, это не уменьшает размер, чтобы соответствовать моемуscreen.

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

Любая помощь с благодарностью!

Спасибо,

Марк

...