【发布时间】:2015-06-20 04:24:43
【问题描述】:
目前我正在开发一个应用程序,其中将通过单击位图按钮从一个点绘制到另一个点。 这是我在 MainActivity.java 中的代码:
public class MainActivity extends Activity {
LineView lineview;
Button button;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//lineview = (LineView)findViewById (R.id.lineView1);
button = (Button)findViewById(R.id.btnCapture);
//lineview.setVisibility(View.INVISIBLE);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// lineview.setVisibility(View.VISIBLE);
}
});
}
}
LineView.java - 画线类
public class LineView extends View {
Paint paint = new Paint();
public LineView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public LineView(Context context, AttributeSet attrs, int defstyle) {
super(context, attrs, defstyle );
}
public LineView(Context context) {
super(context);
paint.setColor(Color.BLACK);
}
@Override
public void onDraw(Canvas canvas) {
canvas.drawLine(0, 0, 20, 20, paint);
}
}
现在它使用定义的坐标从头开始绘制线。我希望使用在主要活动中声明的 2 个点的坐标来绘制线条。并且该功能应该在 onClick 之后起作用。 提前致谢。
【问题讨论】:
-
使用
ImageView代替app.draw.line.LineView,然后使用ImageView.setBitmap(bitmap),其中bitmap是您画线的位图。 -
我绑在位图内画线,但只有黑屏。另外,现在我专注于在第二个答案的帮助下解决我的问题,但取得了一点进展
-
使用Canvas.drawColor 用您选择的背景颜色填充整个位图。还可以尝试为
Bitmap或ImageView指定大小。 -
我的位图是一个图像。我试着在上面画一条线。所以声明了尺寸和颜色
标签: java android android-canvas