TextViewのサイズを背景画像で変更しようとしています。私はのTextViewクラスを拡張するクラスを持っている、そのように追加されます。Android setTextSize TextViewがベースラインを移動してテキストの高さを外す
MyCustomTextView tv2 = new MyCustomTextView(this);
RelativeLayout.LayoutParams lparams = new
RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT);
lparams.addRule(RelativeLayout.ALIGN_PARENT_TOP);
tv2.setLayoutParams(lparams);
myLayout.addView(v);
と私は私のカスタムのTextViewクラスのようにズームしています:
public float getScaledTextHeight()
{
float textHeightDPI = initial_size/windowHeight_inDPI;
float textOnScreenHeight = textHeightDPI * windowHeight_inDPI;
float scaledText = textOnScreenHeight * mZoom;
return scaledText;
}
public void setZoomTextHeight(float zoom)
{
mZoom = zoom;
image_size = getScaledTextHeight();
float mX = ((offset_x + img_offset_x) * mZoom);
float mY = ((offset_y + img_offset_y) * mZoom);
RelativeLayout.LayoutParams position1 =
(android.widget.RelativeLayout.LayoutParams)this.getLayoutParams();
position1.leftMargin = (int)mX;
position1.topMargin = (int)mY;
position1.bottomMargin = (int)(window_height - (position1.topMargin +
image_size + 16));
this.setLayoutParams(position1);
setTextSize(TypedValue.COMPLEX_UNIT_PX , image_size);
invalidate();
}
何が起こって終わることは作ることですテキストが大きくなるとTextViewのサイズが正しく調整されますが、テキストを小さくすると、サイズが大きいときと同じベースラインが維持されます。それは私のテキストをボトムアップからカットし始めます。
私の質問は、ベースラインをどのように移動して、リサイズ中にボトムが途切れることがないかです。
ありがとうございます。
私のために働いた!この仕事をするためにここで何が起こっているのですか? – Glenn
@Glennこれは、setMovementMethodを呼び出すことによって、不注意にアンドロイド:bufferType = "spannable"を設定しているため、ベースラインがシフトすることが予想されるためです。 – whiskeyjoe