我使用這個通過一個TextView個性化刪除線的TextView
textView.setPaintFlags有stike(textView.getPaintFlags()| Paint.STRIKE_THRU_TEXT_FLAG);
但現在我想個性化顏色並將其旋轉45°以適應內容的對角線。
我綁:
我雖然有關擴展TextView的小部件,並重寫的onDraw方法..但我在設計非常初學者...
所以任何幫助如何繪製紅色(顏色)在textView上旋轉行嗎?
我使用這個通過一個TextView個性化刪除線的TextView
textView.setPaintFlags有stike(textView.getPaintFlags()| Paint.STRIKE_THRU_TEXT_FLAG);
但現在我想個性化顏色並將其旋轉45°以適應內容的對角線。
我綁:
我雖然有關擴展TextView的小部件,並重寫的onDraw方法..但我在設計非常初學者...
所以任何幫助如何繪製紅色(顏色)在textView上旋轉行嗎?
增加Mayani的響應
@Override
protected void onDraw(Canvas canvas) {
Paint paint = new Paint();
paint.setColor(strikeThroughColor);
paint.setStyle(Paint.Style.FILL);
paint.setFakeBoldText(true);
paint.setStrikeThruText(true);
paint.setStrokeWidth(strikeThroughWidth);
paint.setFlags(Paint.ANTI_ALIAS_FLAG);
super.onDraw(canvas);
float width = getWidth();
float height = getHeight();
canvas.drawLine(width/10, height/10, (width - width/10), (height - height/10), paint);
}
爲此,請按照下面的步驟:
View
類例如:
class CustomTextView extends View {
private int mColor;
private int mRotationAngle, mRotationW, mRotationH;
private String mText;
public CustomTextView(Context context) {
super(context);
// set default parameters
mColor = Color.WHITE;
mRotationAngle = 0;
}
public void SetColor(int newcolor) {
mColor = newcolor;
this.invalidate();
}
public void SetRotation(int newangle, int neww, int newh) {
mRotationAngle = newangle;
mRotationW = neww;
mRotationH = newh;
this.invalidate();
}
public void SetText(String newtext) {
mText = newtext;
this.invalidate();
}
@Override
protected void onDraw(Canvas canvas) {
Paint paint = new Paint();
paint.setStyle(Paint.Style.FILL);
canvas.rotate(mRotationAngle,mRotationW,mRotationH);
canvas.drawText(mText, 0, 0, paint);
super.onDraw(canvas);
}
}
更新:
沒有罷工已經在圖形佈局顯示出... – 2012-08-07 13:09:28
我沒有找到做什麼,我需要......無論如何,你的代碼有什麼問題使得罷工槽沒有顯示?你在發佈之前試過嗎? – 2012-08-07 13:42:57
使用下面的方法,您可以不用在Java代碼的UI搞亂實現這樣的功能:
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_centerVertical="true">
<TextView
android:id="@+id/textview1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:text="$99"
android:textSize="12sp" />
<View
android:layout_width="0dp"
android:layout_height="1dp"
android:layout_centerVertical="true"
android:layout_alignLeft="@+id/textview1"
android:layout_alignRight="@+id/textview1"
android:background="@color/fav_dark_red_color" />
</RelativeLayout>
+1很高興知道您已經嘗試過,並在我的回答中玩得更多,並自己找到解決方案。 – 2012-08-08 03:44:53