1 旋转文字的TextView
package com.example.view_textview;
public class MyTextView extends TextView {
private int degree;
public MyTextView(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
TypedArray array = context.obtainStyledAttributes(attrs,R.styleable.MyView);
int degree = array.getColor(R.styleable.MyView_degree, 0); // 提供默认值,放置未指定
this.degree = degree;
array.recycle(); // 一定要调用,否则这次的设定会对下次的使用造成影响
}
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
canvas.rotate(degree, getMeasuredWidth() / 2, getMeasuredHeight() / 2);
super.onDraw(canvas);
}
}
<declare-styleable name="MyView">
<attr name="degree" format="integer" />
</declare-styleable>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:my="http://schemas.android.com/apk/res/com.example.view_textview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
tools:context=".MainActivity" >
<com.example.view_textview.MyTextView
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_centerInParent="true"
android:text="@string/hello_world"
android:textColor="#FF0000"
my:degree="-80" />
</RelativeLayout>
自定义旋转TextView实现360度动态显示
本文介绍如何在Android中自定义TextView,使其可以实现360度旋转动态显示文本,通过设置样式属性来控制旋转角度,提供了一个实例代码演示。
311

被折叠的 条评论
为什么被折叠?



