0

背景でButtonを使用すると Android レイアウトが機能するのに、 ImageButtonを使用すると壊れるのはなぜですか? ドキュメントを読みましたが、レンダリングが異なる理由がわかりません。1つはTextViewで、もう1つはImageViewですが、コンテキストに関係なくdpはdpであると想定しています。2 つのレイアウト間で変更したのは、"ImageButton" を "Button" に、"src" を "background" に変更したことだけです。

作業レイアウト:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" 
    android:orientation="vertical"
    android:background="@drawable/background">

. . .

<Button 
    android:contentDescription="@string/login_button_facebook"
    android:layout_width="200dp"
    android:layout_height="45dp"
    android:background="@drawable/first_thought_menu_2_facebook"
    android:onClick="loginWithFacebook"        
    />

<Button 
    android:contentDescription="@string/login_button_email"
    android:layout_width="200dp"
    android:layout_height="45dp"
    android:background="@drawable/first_thought_menu_3_email"
    android:onClick="loginWithEmail"        
    />

<Button 
    android:contentDescription="@string/login_button_anonymous"
    android:layout_width="200dp"
    android:layout_height="45dp"
    android:background="@drawable/first_thought_menu_4_anonymous"
    android:onClick="loginWithAnonymous"        
    />            

. . .   

</LinearLayout>

作業レイアウトの写真:

作業レイアウト

壊れたレイアウト:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" 
    android:orientation="vertical"
    android:background="@drawable/background">

. . .

<ImageButton 
    android:contentDescription="@string/login_button_facebook"
    android:layout_width="200dp"
    android:layout_height="45dp"
    android:src="@drawable/first_thought_menu_2_facebook"
    android:onClick="loginWithFacebook"        
    />

<ImageButton 
    android:contentDescription="@string/login_button_email"
    android:layout_width="200dp"
    android:layout_height="45dp"
    android:src="@drawable/first_thought_menu_3_email"
    android:onClick="loginWithEmail"        
    />

<ImageButton 
    android:contentDescription="@string/login_button_anonymous"
    android:layout_width="200dp"
    android:layout_height="45dp"
    android:src="@drawable/first_thought_menu_4_anonymous"
    android:onClick="loginWithAnonymous"        
    />          

. . .   

</LinearLayout> 

壊れたレイアウトの写真:

壊れたレイアウト

4

1 に答える 1

1

android:backgroundsrc の代わりに使用します。

于 2012-09-25T23:52:54.750 に答える