Button上、下、左、右の位置に画像と文字を入れる

2890 ワード

転載は出典を明記してください.http://blog.csdn.net/droyon/article/details/37564419
タイトルに記載されているようなニーズを持つ人が非常に多く、多くの人が自分で定義したコンポーネントを採用してニーズを克服し、実際にはより「怠け者」になる方法もあります.
1、先に効果図を添付する:
在Button上、下、左、右位置加入图片和文字_第1张图片
2、方案.
まず、Activity.java
public class MainActivityTest extends Activity{

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main1);
	}
	
}
次にxmlレイアウトファイル
<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:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:orientation="vertical"
    tools:context=".MainActivity" >

    <Button 
        android:id="@+id/btn_ok0"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
       	android:drawableTop="@drawable/ic_launcher"
        android:text="@string/hello_world" />
    
    <Button 
        android:id="@+id/btn_ok1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:drawableBottom="@drawable/ic_launcher"
        android:text="@string/hello_world" />
    
    <Button 
        android:id="@+id/btn_ok2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:drawableLeft="@drawable/ic_launcher"
        android:text="@string/hello_world" />
    
    <Button 
        android:id="@+id/btn_ok3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:drawableRight="@drawable/ic_launcher"
        android:text="@string/hello_world" />

</LinearLayout>

3、解析.
キーコードはレイアウトファイルのandroid:drawableBottom、drawableBottomという属性(attr)はTextView解析の範疇に属し、私たちが使用しているButtonはTextViewから継承されているので、この属性を使用してDrawableのレイアウトを完了することができます.