Android 重叠图像上的按钮
我想在图像上重叠10个按钮。我正在使用RelativeLayout做同样的事情,但结果是,按钮的位置在不同的设备中发生变化。那么,有人能告诉我一个解决方法吗?这是此活动的xml文件:Android 重叠图像上的按钮,android,android-layout,android-relativelayout,Android,Android Layout,Android Relativelayout,我想在图像上重叠10个按钮。我正在使用RelativeLayout做同样的事情,但结果是,按钮的位置在不同的设备中发生变化。那么,有人能告诉我一个解决方法吗?这是此活动的xml文件: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/exercise1" andro
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/exercise1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="5dp"
tools:context="nmss.example.com.coach.Exercise1">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/humanbody"
android:layout_marginStart="20dp"/>
<Button
android:id="@+id/btn_neck"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:layout_marginStart="145dp"
android:layout_marginTop="62dp"
android:text="Neck"
android:textSize="12sp" />
<Button
android:id="@+id/btn_shoulder"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="35dp"
android:layout_marginTop="75dp"
android:text="Shoulder"
android:textSize="12sp"/>
<Button
android:id="@+id/btn_biceps"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="25dp"
android:layout_marginTop="135dp"
android:text="Biceps"
android:textSize="12sp"/>
<Button
android:id="@+id/btn_forearm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginTop="195dp"
android:text="Forearm"
android:textSize="12sp"/>
<Button
android:id="@+id/btn_quads"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="68dp"
android:layout_marginTop="315dp"
android:text="Quads"
android:textSize="12sp"/>
<Button
android:id="@+id/btn_chest"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="145dp"
android:layout_marginTop="100dp"
android:text="Chest"
android:textSize="12sp"/>
<Button
android:id="@+id/btn_abs"
android:layout_width="65dp"
android:layout_height="wrap_content"
android:layout_marginStart="150dp"
android:layout_marginTop="160dp"
android:text="Abs"
android:textSize="12sp"/>
<Button
android:id="@+id/btn_triceps"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="246dp"
android:layout_marginTop="125dp"
android:text="Triceps"
android:textSize="12sp" />
<Button
android:id="@+id/btn_mid_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="215dp"
android:layout_marginTop="175dp"
android:text="Middle back"
android:textSize="12sp"/>
<Button
android:id="@+id/btn_calves"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="210dp"
android:layout_marginTop="400dp"
android:text="Calves"
android:textSize="12sp"/>
</RelativeLayout>
永远不要硬编码这样的尺寸,25dp, 将此链接添加到依赖项,以获取每个屏幕的尺寸
compile 'com.intuit.sdp:sdp-android:1.0.4'
它的用途是这样的,
android:layout_marginTop="@dimen/_110sdp"
写入@dimen/…Ctrl+Space后,可以看到尺寸的值,范围为1dp到600dp。试试看,它非常有用。只需使用
LinearLayout
而不是RelativeLayout
。
尝试使用百分比在顶部、底部、右侧和左侧排列图像按钮。
您还需要在res文件夹中为所有设备创建不同的布局文件夹,并相应地使用尺寸。不要硬编码这样的尺寸,25dp,将此链接添加到依赖项中,以获取每个屏幕的尺寸。您可以使用CONTAINT layout:->