我想在TextView
的每一行之间加一条线。
原始TextView
可以这样做吗?
如果没有,我该怎么办?
解答:
感谢@Slartibartfast参考和建议。我做了一个定制的TextView
。我得到这样的东西。
这就是我想要的!
代码:
public class LinedTextView extends TextView {
private Rect mRect;
private Paint mPaint;
public LinedTextView(Context context) {
super(context);
initialize();
}
public LinedTextView(Context context, AttributeSet attrs) {
super(context, attrs);
initialize();
}
public LinedTextView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
initialize();
}
private void initialize() {
mRect = new Rect();
mPaint = new Paint();
mPaint.setStyle(Paint.Style.STROKE);
mPaint.setColor(0x800000ff);
}
@Override
protected void onDraw(Canvas canvas) {
int cnt = getLineCount();
Rect r = mRect;
Paint paint = mPaint;
for (int i = 0; i < cnt; i++) {
int baseLine = getLineBounds(i, r);
canvas.drawLine(r.left, baseLine + 1, r.right, baseLine + 1, paint);
}
super.onDraw(canvas);
}
}
答案 0 :(得分:3)
使用TextView
<View android:layout_width="fill_parent"
android:layout_height="1px"
android:background="@android:color/background_dark" />
您可以根据需要进行配置。
您也可以将ListView
与分隔符一起使用。