2012-02-08 48 views

回答

0

看到這個職位:https://stackoverflow.com/a/7855852/413127

'豎排文本' 是要谷歌

public class VerticalTextView extends TextView{ 
    final boolean topDown; 

    public VerticalTextView(Context context, AttributeSet attrs){ 
     super(context, attrs); 
     final int gravity = getGravity(); 
     if(Gravity.isVertical(gravity) && (gravity&Gravity.VERTICAL_GRAVITY_MASK) == Gravity.BOTTOM) { 
     setGravity((gravity&Gravity.HORIZONTAL_GRAVITY_MASK) | Gravity.TOP); 
     topDown = false; 
     }else 
     topDown = true; 
    } 

    @Override 
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec){ 
     super.onMeasure(heightMeasureSpec, widthMeasureSpec); 
     setMeasuredDimension(getMeasuredHeight(), getMeasuredWidth()); 
    } 

    @Override 
    protected boolean setFrame(int l, int t, int r, int b){ 
     return super.setFrame(l, t, l+(b-t), t+(r-l)); 
    } 

    @Override 
    public void draw(Canvas canvas){ 
     if(topDown){ 
     canvas.translate(getHeight(), 0); 
     canvas.rotate(90); 
     }else { 
     canvas.translate(0, getWidth()); 
     canvas.rotate(-90); 
     } 
     canvas.clipRect(0, 0, getWidth(), getHeight(), android.graphics.Region.Op.REPLACE); 
     super.draw(canvas); 
    } 
} 
+0

是否正確訪問像這樣 – 2012-02-08 08:57:11

+0

否您需要將包添加到XML聲明中。 Blundell 2012-02-08 09:31:05

+0

是的,我做了它的工作thaks ..現在我有ttf文件的字體如何設置此文本的類型面 – 2012-02-08 09:57:03

相關問題