私は現在使用setGravity(Gravity.CENTER_VERTICAL)
していますが、これはTextViewが十分に高い場合にうまく機能します。ただし、TextViewが狭い場合は、テキストの下部のみがクリップされます。テキストを上下から均等に切り抜いてほしい。
質問する
68 次
1 に答える
0
私は解決策を見つけました、
ビューの高さが足りない場合は、スクロール値を移動する必要があります。この関数を onlayout 関数で呼び出すことができます。
protected void alignVerticalAlingment() {
int fontSize = getLineCount() * getLineHeight();
if (getHeight() > 0) {
setPadding(getPaddingLeft(), 0, getPaddingBottom(), 0);
int height = getHeight();
int y = (fontSize - height + (int) getPaint()
.descent()) / 2;
scrollTo(0, y);
}
}
于 2012-05-08T10:39:29.220 に答える