11 java xml layout user-interface android
我想将图像设置为背景上的文本和文本左侧的图标.在iPhone中非常容易,但无法弄清楚如何在Android上执行此操作,可以调整该按钮的大小并保持图标+文本位置和距离正确.
苹果手机:
Android我有这个:
xml代码是:
<Button
android:id="@+id/btSettings"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@id/tvWhatever"
android:layout_centerHorizontal="true"
android:layout_marginBottom="20dp"
android:background="@drawable/bt_general"
android:drawableTop="@drawable/settings_selected"
android:text="@string/settings"
android:textColor="#000000" />
Run Code Online (Sandbox Code Playgroud)
从这里拿到代码.
如果我使用android:drawableLeft
,那么图标将转到最左边的部分.
如果我开始玩半硬编码的填充物,那么我会看到不同的差异:(手机和桌子)
如果我添加android:gravity="left|center_vertical"
它将看起来像这样:
文本是可变的:当用户更改语言时,它将发生变化.
怎么做得好?
我不想低估任何人的答案,但请阅读问题,不要提出我已经尝试过的内容.还告诉硬编码修复不能很好地工作.
这不是作业,而是商业软件的一部分.
以下是来自答案的建议代码:
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/bt_general"
android:padding="20dip" >
<ImageView
android:id="@+id/xIcon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="10dip"
android:src="@drawable/settings_selected" />
<TextView
android:id="@+id/xSettingsTxt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="@string/settings"
android:textColor="#000000" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
您如何看待android:layout_marginLeft="10dip"
Galaxy s4的外观?这是一个预览:
这不是,我所问的."dip"或"dp"或"px"不应在任何地方用作距离左侧,顶部的距离,因为手机具有HPDI,屏幕较小,平板电脑具有MDPI和宽分辨率.简单不适用于mdpi和xxhdpi.
Nizam的答案非常接近一个很好的解决方案:
归档时间: |
|
查看次数: |
29205 次 |
最近记录: |