ImageView の特定の位置にいくつかの ImageButtons を貼り付けようとしています。問題は、ImageButton に絶対レイアウトを使用する必要があり、画面の解像度を変更すると、すべての ImageButton がその場所から移動することです。
私はすべてのウェブで答えを探していますが、何も見つかりません。
ありがとうございました。
ImageView の特定の位置にいくつかの ImageButtons を貼り付けようとしています。問題は、ImageButton に絶対レイアウトを使用する必要があり、画面の解像度を変更すると、すべての ImageButton がその場所から移動することです。
私はすべてのウェブで答えを探していますが、何も見つかりません。
ありがとうございました。
レイアウトで絶対位置を使用しないことをお勧めします。ボタンを正しい位置に配置できる場合は、コンテナーとマージンを使用します。
デバイスに応じて絶対位置が本当に必要な場合は、解像度の種類ごとに特定の寸法を使用できます。ここを参照してください:
http://developer.android.com/training/basics/supporting-devices/screens.html
絶対レイアウトの代わりに相対レイアウトを使用してください。相対レイアウトが気に入らない場合は、絶対レイアウトを使用できます。これに問題はありませんが、ほとんどの状況では実用的ではありません。絶対レイアウトを使用して、画面上のビューを次のようにスケーリングできます。ビューとその階層化されたサブビューを相対的にスケーリングします。
ダイアン・ハックボーン (Google で働く) は次のように述べています。
もう一度言いますが、今後のリリースから AbsoluteLayout を削除するつもりはありませんが、使用しないよう強くお勧めします。
あなたが私を信じないことを選択した場合、あなたは大歓迎ですが、あなたがその決定を下すことについて私は責任を負いません.
ボタンを重ねる方法は次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:src="@drawable/image" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginBottom="34dp"
android:layout_marginRight="40dp"
android:text="Button" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/button2"
android:layout_below="@+id/button1"
android:layout_marginRight="37dp"
android:layout_marginTop="108dp"
android:text="Button" />
</RelativeLayout>