先来看一下效果

上代码

package com.zph.view;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Path;
import android.util.AttributeSet;
import android.widget.TextView;

public class RotateTextView extends TextView{

public RotateTextView(Context context) {    super(context);}public RotateTextView(Context context, AttributeSet attrs) {    super(context, attrs);}@Overrideprotected void onDraw(Canvas canvas) {    // 倾斜度45,上下左右居中    int w=getMeasuredWidth();    canvas.rotate(-45,w,w);    // 绘制这个三角形,你可以绘制任意多边形    Paint p1 = new Paint();    p1.setColor(Color.RED);// 设置红色    p1.setStyle(Paint.Style.FILL);    Path path = new Path();    path.moveTo((int)(w/3), (int)(w/3));// 此点为多边形的起点    path.lineTo((int)(w*1.67), (int)(w/3));    path.lineTo(w, w);    path.close(); // 使这些点构成封闭的多边形    canvas.drawPath(path, p1);    Paint p = new Paint();    p.setColor(Color.WHITE);// 设置白色    p.setTextSize((int)(w*0.23));//设置字体大小    canvas.drawText(text, (int)(w*0.66), (int)(w*0.60), p);    super.onDraw(canvas);}/** 要显示的文字 */private String text="新标签";public void setText(String text) {    this.text=text;    invalidate();//重绘刷新Textview内容}

}

xml

   <com.zph.view.RotateTextView        android:id="@+id/test_rt1"        android:layout_alignRight="@+id/img"        android:layout_alignBottom="@+id/img"        android:layout_width="288px"        android:layout_height="288px"/>

代码实现

RotateTextView rt;private void setTestRT(){    Log.i("TAG","RotateTextView");    rt= (RotateTextView) findViewById(R.id.test_rt1);    rt.setText("求推荐");    //需要在自定义控件中重写setext()要不然此处的setext()没有效果}

更多相关文章

  1. Android的SharedPreferences(用于保存系统设置)
  2. android 利用startActivityForResult()方法得到另一个Activity的
  3. android > intent > 自动跳转到 系统 设置 页面
  4. 类似股票的实时动态折线图
  5. Android自带语音播报
  6. android 设置默认launcher 附上代码
  7. TextView 在xml文件中的解释
  8. Android如何将第三方信息应用设置为默认信息应用?
  9. android软件设置gps自动开启

随机推荐

  1. 【 Android(安卓)'四大组件' 】篇 -- Act
  2. 关于android xml文件中 android:id="@+id
  3. 使用SlidingDrawer的隐藏/显示搜索框
  4. Android——使用GridView制作二维布局界
  5. Android(安卓)选择文件并返回路径
  6. Android学习之 sildingmenu
  7. Android(安卓)android:gravity属性介绍及
  8. 【转】android中Textview如何限制在一行
  9. 布局(1、线性布局)
  10. Android通过源码编译apk获得系统权限