0
A
回答
2
0
使用SlopeTextView,而不是普通的文本视图。试试这个:
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Typeface;
import android.util.AttributeSet;
import android.view.Gravity;
import android.widget.TextView;
public class SlopeTextView extends TextView{
final boolean topDown;
public SlopeTextView(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){
Paint paint = new Paint();
paint.setTypeface(Typeface.DEFAULT);
paint.setStyle(Paint.Style.FILL);
canvas.rotate(-45,getHeight(),0);
super.onDraw(canvas);
}
}
实现:
<com.example.myviews.SlopeTextView
android:id="@+id/slopeTextView"
android:layout_width="60dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:gravity="left|top"
android:text="Featured"
android:textColor="@color/white"
android:textSize="@dimen/text_medium" />
+0
谢谢。我会尝试 –
你尝试自己实现它?请发布不适合你的代码。否则,请查找教程,StackOverflow不是教程网站:-) – Kelevandos
而且它也不是代码请求站点。 –
@Kelevandos no.I我没有尝试yet.i没有得到基本的想法do.its不是一个教程网站。感谢you.if你知道任何教程链接请发布。 –