竖排文字控件:

package com.howfun.test;import android.content.Context;import android.graphics.Canvas;import android.util.AttributeSet;import android.view.Gravity;import android.widget.TextView;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); }}


这样使用来实现文字靠左靠上对齐:



  <com.howfun.test.VerticalTextView    android:layout_width="450dp"    android:layout_height="450dp"    android:textSize="40sp"    android:layout_marginLeft="100dp"    android:gravity="bottom|right"    android:text="Vertical text"    /> 

更多相关文章

  1. 项目中那些事|控件之TextView
  2. [android]控件Button常用属性
  3. 文字跑马灯
  4. Android 控件view的可见,不可见,隐藏的设置和区别
  5. android 输入法出现挤压屏幕、android输入键盘覆盖了屏幕控件的
  6. Android 控件使用参数集锦
  7. Android控件笔记——在界面中显示及输入文本信息
  8. android 带文字的ImageButton
  9. Android:控件的隐藏显示失效了

随机推荐

  1. Android 获取屏幕尺寸实例代码
  2. Android的一些积累(不断更新)
  3. android菜鸟
  4. 在Kotlin中配置dataBinding项目无法运行
  5. android在eclipse下部署环境
  6. Android下MP3播放器的实现源代码01
  7. Android 控件之一:Button 按钮
  8. android image cache 图片缓存 异步 下载
  9. 个人修改机智云apk之出现couldn't find "
  10. android 缩放图片与内存溢出