1

次の画像ボタンを持つアクティビティがあります。

<ImageButton android:id="@+id/nextPage"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"       
    android:contentDescription="@string/nextPageString"
    android:alignParentRight="True"
    android:alignParentBottom="True"
    android:onClick="NextPage" />

期待どおり、画面の右下隅に My Button が表示されます。

ボタンをクリックすると、次のコードで背景を変更します。

public void NextPage(View view){
    Resources res = this.getResources();
    Drawable d = res.getDrawable(R.drawable.nextBackgroundImage);
    view.setBackground(d);
}

最初にボタンをクリックすると、新しい背景が希望どおりに表示されますが、画像ボタンが画面の中央に移動します。理由がわからない。右下隅にとどめたいと思います。

4

1 に答える 1

1

ここのコメントのいくつかが指摘しているように、背景画像のサイズがボタンが「動いている」理由である可能性があります。とwraplayout_widthlayout_height設定すると、ビューのコンテンツ (背景を含む) が変更されるとサイズが変更されます。

Alex の場合は +1 です。特定のサイズを TEST に設定してみて、何が起こるかを確認してください (たとえば、幅 200 dp x 高さ 80 dp)。

于 2012-11-29T18:42:46.610 に答える