当 Textview 是 HorizontalCentered 时,如何使 ImageView 离开 TextView
How to make ImageView be left of a TextView, when Textview is HorizontalCentered
我有一个带有 RelativeLayout 的 XML 文件,我还有一个带有重力中心的 Textview。在代码中,我想获取此 Textview 的 X 坐标,TextView 的起始位置(TextView 的长度不是常量,它可以更改)。我需要一个 ImageView 放在 TextView 旁边。
<TextView
android:id="@+id/textView6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentTop="true"
android:gravity="center"
android:text="TextView" /> `
countryText = (TextView) findViewById(R.id.textView6);
countryText.getLeft()
getLeft() return 0;
将 android:layout_centerInParent="true" 添加到文本视图并将 android:layout_toLeftOf="@id/textView6" 添加到图像视图
只需删除 ImageView 并在 TextView 左侧添加一个 复合可绘制对象。
这也更有效,因为它有助于扁平化布局层次结构。
即:
<TextView
android:id="@+id/textView6"
android:drawableLeft="@drawable/my_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentTop="true"
android:gravity="center"
android:text="TextView"
/>
官方docs
我有一个带有 RelativeLayout 的 XML 文件,我还有一个带有重力中心的 Textview。在代码中,我想获取此 Textview 的 X 坐标,TextView 的起始位置(TextView 的长度不是常量,它可以更改)。我需要一个 ImageView 放在 TextView 旁边。
<TextView
android:id="@+id/textView6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentTop="true"
android:gravity="center"
android:text="TextView" /> `
countryText = (TextView) findViewById(R.id.textView6);
countryText.getLeft()
getLeft() return 0;
将 android:layout_centerInParent="true" 添加到文本视图并将 android:layout_toLeftOf="@id/textView6" 添加到图像视图
只需删除 ImageView 并在 TextView 左侧添加一个 复合可绘制对象。
这也更有效,因为它有助于扁平化布局层次结构。
即:
<TextView
android:id="@+id/textView6"
android:drawableLeft="@drawable/my_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentTop="true"
android:gravity="center"
android:text="TextView"
/>
官方docs