2012-06-26 16 views
5

TextView'da nasıl bir eğik çizgi çizmenin basit bir yolu var mı?TextView üzerinde eğik olarak nasıl vurulur?

textview.setPaintFlags(textview.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG); 

Ama hiç böyle bir şey gerekiyor: Şimdi bu kodu kullanıyorum nasıl sadece bu yüzden herhangi bir yardım takdir edilecektir başarmak için
enter image description here
ben Boya API ile çok aşina değilim.
Teşekkürler.

+0

Merhaba bunu okuyun http://stackoverflow.com/questions/3881553/is-there-an-easy-way-to-strike-through-text-in-an-app-widget – iNan

+0

Gördüm Bu gönderi, ama ona ihtiyacım var. Daha önce 9patch kullanmayı denedim, ama sonuç çirkin görünüyor. – Warlock

cevap

9

Özel bir TextView sınıfı ile oldukça kolaydır. Daha fazla bilgi için dokümanlardan Canvas guide'a bakın.

public class ObliqueStrikeTextView extends TextView 
{ 
    private int dividerColor; 
    private Paint paint; 

    public ObliqueStrikeTextView(Context context) 
    { 
     super(context); 
     init(context); 
    } 

    public ObliqueStrikeTextView(Context context, AttributeSet attrs) 
    { 
     super(context, attrs); 
     init(context); 
    } 

    public ObliqueStrikeTextView(Context context, AttributeSet attrs, int defStyle) 
    { 
     super(context, attrs, defStyle); 
     init(context); 
    } 

    private void init(Context context) 
    { 
     Resources resources = context.getResources(); 
     //replace with your color 
     dividerColor = resources.getColor(R.color.black); 

     paint = new Paint(); 
     paint.setColor(dividerColor); 
     //replace with your desired width 
     paint.setStrokeWidth(resources.getDimension(R.dimen.vertical_divider_width)); 
    } 

    @Override 
    protected void onDraw(Canvas canvas) 
    { 
     super.onDraw(canvas); 
     canvas.drawLine(0, getHeight(), getWidth(), 0, paint); 
    } 
} 

Tamamen böyle, paketle birlikte görünümü niteleyerek düzen dosyasında kullanabilirsiniz: Burada

<your.package.name.ObliqueStrikeTextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="1234567890" 
     android:textSize="20sp"/> 

Sonuçta bu renk/genişliğini değiştirebileceğiniz bir yorum Not :

Screenshot

+0

Tam olarak aradığım şey. Daha iyi görünmesi için biraz "anti-analize" ekliyorum. Teşekkürler! – Warlock

İlgili konular