Android给View画边框
Android给View画边框
1. 引言
在Android中,为TextView组件画边框,效果图及实现如下。
2. 效果图
3. 功能实现
(1) 自定义TextView实现:
- package com.focus.fishme;
- import android.content.Context;
- import android.graphics.Canvas;
- import android.graphics.Paint;
- import android.widget.TextView;
- public class FishMeTextView extends TextView {
- public FishMeTextView(Context context) {
- super(context);
- }
- @Override
- protected void onDraw(Canvas canvas)
- {
- super.onDraw(canvas);
- Paint paint = new Paint();
- // 将边框设为黑色.
- paint.setColor(android.graphics.Color.RED);
- // 画TextView的4个边.
- canvas.drawLine(0, 0, this.getWidth() - 1, 0, paint);
- canvas.drawLine(0, 0, 0, this.getHeight() - 1, paint);
- canvas.drawLine(this.getWidth() - 1, 0, this.getWidth() - 1, this.getHeight() - 1, paint);
- canvas.drawLine(0, this.getHeight() - 1, this.getWidth() - 1, this.getHeight() - 1, paint);
- }
- }
(2) 主Activity实现:
- package com.focus.fishme;
- import android.app.Activity;
- import android.os.Bundle;
- import android.widget.LinearLayout;
- public class BorderLineActivity extends Activity {
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- FishMeTextView fishMeTextView = new FishMeTextView(this);
- fishMeTextView.setText("马英才");
- fishMeTextView.setWidth(100);
- fishMeTextView.setHeight(100);
- LinearLayout main = (LinearLayout) findViewById(R.id.main);
- main.addView(fishMeTextView);
- }
- }
评论暂时关闭