我已經查看了很多答案和問題,這裏是關於stackoverflow的,但沒有發現任何對我的問題真正有用的東西。更改字體/文字大小時的Textview對齊問題
我有相等的尺寸和緊挨着彼此相等屬性兩個textviews中,XML佈局是這樣的(僅TEXTSIZE不同)
<?xml version="1.0" encoding="utf-8"?>
<TextView
android:id="@+id/data_content_left"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight=".50"
android:gravity="bottom|center"
android:text="201.5"
android:textSize="50sp"
android:textStyle="bold"
android:singleLine="true"
android:ems="62" />
<TextView
android:id="@+id/data_content_right"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.50"
android:ems="62"
android:gravity="center|bottom"
android:singleLine="true"
android:text="201.5"
android:textSize="20sp"
android:textStyle="bold" />
和代碼是
package com.example.fonttest; import android.os.Bundle; import android.app.Activity; import android.graphics.Typeface; import android.view.Menu; import android.widget.LinearLayout; import android.widget.TextView;
公共類MainActivity擴展活動{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView textViewLeft = (TextView) findViewById(R.id.data_content_left);
TextView textViewRight = (TextView) findViewById(R.id.data_content_right);
Typeface myTypeface = Typeface.createFromAsset(this.getAssets(), "fonts/wwDigital.ttf");
textViewLeft.setTypeface(myTypeface, Typeface.NORMAL);
textViewRight.setTypeface(myTypeface, Typeface.NORMAL);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
爲什麼用文本/字體大小改變號碼下方的「白色空間」的高度? (如下圖所示)
如何確定問題與字體或textview有關?
我使用這個字體:http://www.dafont.com/ww-digital.font][3]
謝謝!我之前沒有看到過android:ems屬性。我試圖在有問題的textview上指定android:ems,但它不會改變任何東西。縱向的空白區域隨着文本大小的變化而變化... – niaren
發佈更多代碼和規範 – user2007354
我現在編輯了這個問題,以便包含的xml和代碼給出圖像中顯示的輸出。我希望現在這個規範很明確。 – niaren