0

ボタン

最初の 2 つのフィールドは Android ICS の SMS アプリケーションで、3 番目のフィールドは私のものです。
私はこのようにしました:

 <RelativeLayout 
  android:layout_width="match_parent"  
  android:layout_height="match_parent" >

   <EditText
    android:id="@+id/searchfield"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_toLeftOf="@+id/newItem"/>

   <ImageButton 
    android:id="@+id/newItem"
    android:layout_height="40dip"
android:layout_width="40dip"
android:layout_alignParentTop="@+id/searchfield"
android:adjustViewBounds="true"
android:contentDescription="Add"
android:layout_alignParentRight="true"/>

 </RelativeLayout>

画像は次のように設定されます。

 Drawable img = getResources().getDrawable( R.drawable.light_send );
 newItem.setBackgroundDrawable(img);

非常に悪い描画矢印が表示され、青い背景を下に作成するのに問題があります。何か不足していますか?

4

1 に答える 1

2

ImageButton の場合、探している色を含む色状態リストに背景を設定します。画像に関しては、 setImageResourceを実行し、setBackgroundDrawableを実行したくありません。そうすれば、ScaleTypeを変更して、画像の描画方法を調整できます。center_inside を使用して、見栄えの良い矢印を取得します。ImageButton では、背景は他のビューとまったく同じように動作します。画像リソースはコンテンツであり、背景の上に描画されます。

于 2012-04-26T15:43:11.983 に答える