我有png
文件似乎:
我想创建TextView
,应该是这样的:
这是我到目前为止所做的:
选择器speaker.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/speaker_over" />
<item android:state_enabled="false"
android:drawable="@drawable/speaker_disabled" />
<item
android:drawable="@drawable/speaker_default" />
</selector>
这是TextView
:
<TextView
android:id="@+id/speaker"
android:background="@drawable/speaker"
android:text="@string/button_speaker"
android:gravity="center"
android:textColor="@drawable/text_incall_button_color"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.94" />
字符串
<string name="button_speaker">Speaker</string>
我不知道如何将我的文字对齐为“右中”+“右边缘”
在xCode for iOS中,它很简单,只需按像素比例左/右添加边距
如何在Android中执行此操作?
答案 0 :(得分:2)
尝试使用此代码并根据您进行更改。
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/ic_launcher"
android:gravity="center"
android:paddingLeft="20dp"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge" />
答案 1 :(得分:1)
使用以下
android:drawableLeft="@drawable/image"
android:text="@string/text"
仅使用图标作为图片..
使用android:drawableLeft,将drawable绘制到文本的左侧。
更新
然后使用填充
<TextView
android:id="@+id/micro"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.94"
android:background="@drawable/micro_on"
android:paddingLeft="80dp"
android:paddingTop="15dp"
android:text="@string/button_micro"
android:textColor="@drawable/text_incall_button_color" />
答案 2 :(得分:1)
如果音量图标与背景组合,那么最简单的方法是创建RelativeLayout
并将此图像设置为背景。接下来在此TextView
中添加RelativeLayout
并为TextView
提供此属性:
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:paddingRight="20dp"
这应该有效:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="your_image" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:paddingRight="20dp"
android:text="Speaker" />
</RelativeLayout>
答案 3 :(得分:1)
我在这里使用了imageview作为父级。我使用相对布局在imageview上设置了文本视图。您可以查看下面的快照。如果您可以灵活地使用imageview和textview,可以尝试以下内容。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/back" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignRight="@+id/imageView1"
android:layout_marginRight="15dp" or android:paddingLeft="80dp"
// set padding to desired value
android:layout_marginTop="25dp"
android:text="Speaker"
android:textSize="20dp" />
</RelativeLayout>
产生快照
答案 4 :(得分:0)
对此设计之王使用android:drawableLeft="@drawable/yourimage"
属性
这是关于那个的详细规范......
http://developer.android.com/reference/android/widget/TextView.html#attr_android:drawableLeft
希望这会对你有所帮助。