我有一個正方形的圖像...在佈局中,我想在正方形內設置文本,所以我將屬性邊距底部100dp設置爲'TextView',在HDPI手機中我的文本是正方形。這很酷。但是,當我在MDPI設備上運行我的應用程序時,文本看起來應該高一點。Android:TextView保證金底部
其可理解,因爲MDPI和HDPI有不同的分辨率......那麼該怎麼做?如何設置文本,使其外觀在兩個設備上都成比例?
我有一個正方形的圖像...在佈局中,我想在正方形內設置文本,所以我將屬性邊距底部100dp設置爲'TextView',在HDPI手機中我的文本是正方形。這很酷。但是,當我在MDPI設備上運行我的應用程序時,文本看起來應該高一點。Android:TextView保證金底部
其可理解,因爲MDPI和HDPI有不同的分辨率......那麼該怎麼做?如何設置文本,使其外觀在兩個設備上都成比例?
你爲什麼不只是包裝的圖像和文本的FrameLayout內,並給TextView的一個layout_gravity="center"
屬性?用你目前的方法,不同的縱橫比會給你不同的定位。
我的廣場在圖像不在中心... – Jim 2011-06-01 14:16:34
你想疊加到圖像的特定部分?在這種情況下,你可能只想給TextView一個''top | left''的layout_gravity,''center''的重力',並找到正確的像素x,y座標,正方形的大小像素,並給你的TextView的寬度和高度,左上邊距分別匹配x和y座標。 – kcoppock 2011-06-01 14:20:59
真的,有可能有更好的方法來做到這一點。請添加更多詳細信息。您可能只需將圖像放在圖像上,然後只需給TextView一個背景就可以匹配。 – kcoppock 2011-06-01 14:21:43
在這種情況下,您可以使用FrameLayout
。下面是一個簡單的例子:
<FrameLayout
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:background="#ff0000">
<ImageView
android:layout_height="100dp"
android:layout_width="100dp"
android:background="#00ff00"
android:src="@drawable/icon"
android:scaleType="fitXY" />
<TextView
android:layout_height="100dp"
android:layout_width="100dp"
android:gravity="center"
android:text="This is text"
android:textColor="#0000ff"/>
</FrameLayout>
你用什麼單位設置文字大小?如果使用dip(密度獨立像素),則文本大小將按比例相同。 – 2011-06-01 14:05:48
文字大小?我們不是在談論文字大小.... – Jim 2011-06-01 14:15:51