給textview加邊框
最low的做法、textview外層套一層布局,然後給布局加邊框樣式(這麼弱的做法,不能這麼幹)
自定義控制項
用canvas畫四個點
package com.example.csy.activitypractice;
import android.content.context;
import android.graphics.canvas;
import android.graphics.color;
import android.graphics.paint;
import android.support.annotation.nullable;
import android.util.attributeset;
/*** @author csy
* created by csy on 2018/12/3.
*/private int stroke_width = 5;
public bordertextview(context context)
public bordertextview(context context, @nullable attributeset attrs)
public bordertextview(context context, @nullable attributeset attrs, int defstyleattr)
@override
protected void ondraw(canvas canvas) ;
canvas.drawlines(points, paint);}}
canva直接提供了畫矩形的方法
drawrect(float left, float top, float right, float bottom, paint paint) 畫矩形
rectf rectf = new rectf(0, 0, this.getwidth(), this.getheight());
canvas.drawrect(rectf, paint);
之前用rect畫了帶矩形邊框。現在公升級一下畫圓角邊框
rectf rectf = new rectf(0, 0, this.getwidth(), this.getheight());
canvas.drawroundrect(rectf, 20, 20, paint);
如下圖
用drawroundrect出現了粗細不一的邊框,懷疑是因為用的裁剪。
所以嘗試使用畫路徑的方法
path path = new path();
rectf rectf = new rectf(0, 0, this.getwidth(), this.getheight());
path.addroundrect(rectf, 20, 20, path.direction.ccw);
canvas.drawpath(path, paint);
但是效果與drawroundrect一致
懷疑是因為邊框被裁減了,所以畫了兩條線,一條從(0,0)開始,另一條從(100,0)開始
畫筆的起始在邊框的中間,如若從(0,0)開始畫,邊框的一半就會被畫在畫布的外面。
邊框向外推邊框的二分之一,向內推邊框的二分之一
設定padding,減去邊框的粗細。
自定義控制項textview
自定義控制項名稱 public class cheyouquanlinearlayout extends viewgroup public cheyouquanlinearlayout context context,int horizontalspacing,int verticalspacing...
自定義閃爍Textview
一直感覺自定義view是乙個比較難的點,但是要成為乙個合格的android開發者,自定義view又是必經之路。今天我就帶大家寫乙個簡單的自定義textview。在自定義view之前先看一下簡單知識點。1.view的測量。view的測量模式有三種,精確模式 exactly 如控制項具體寬高的大小 最大...
Android 自定義TextView字型!
兩種方法 方法一 在assets目錄下新建目錄fonts,然後存放自己的字型庫,我這裡是微軟雅黑weiruanyahei.ttf。textview tv typeface tf2 typeface.createfromasset getassets fonts weiruanyahei.ttf tv...