实现界面跳转几个简单的步骤:
找到当前界面所在的文件夹–>src文件夹–>com.example.文件名这个包–>右键–>new–>other–>Android–>Android Activity–>next–>next–>修改Activity Name为DrawActivity(自己随意设定)–>finish;
做完上述步骤之后,会自动生成DrawActivity.Java文件和一个.xml的文件,这是新界面的编辑界面。也在主文件夹的layout文件夹下。
实现界面跳转
现在开始正式进行界面跳转的实现了。
找到原登录界面的MainActivity,在这里我的原界面是MainActivity.Java文件,需要跳转到DrawActivity这个界面上来。
现在在原来的登录界面点击按钮,登录成功时进行界面的跳转,所以现在在按钮的监听器的重写方法中添加如下代码:
//=========实现界面的跳转===========
//实现一个需要进行跳转的请求,创建Intent
Intent intent = new Intent();
//设置需要跳转的界面 参数1:当前Activity对象, 参数2:需要跳转的Activity类名.class
intent.setClass(main, DrawActivity.class);
//从当前界面进行跳转
main.startActivity(intent);
现在点击按钮,登录成功之后就会跳转到DrawActivity这个界面中去了。
接下来就是DrawActivity的编写以及它的界面的布置了。
简单画图板的实现
第一步
需要编辑一下我们的画图界面,在.xml中添加一个组件ImageView,并将其拖拽成当前界面大小。
第二步
这里需要在DrawActivity.Java中编写以下代码实现画图功能的实现。
以下的代码位于DrawActivity.Java中的void onCreate(Bundle savedInstanceState)方法内,代码如下
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_draw);
//得到界面的ImageView的对象
ImageView imageView = (ImageView)this.findViewById(R.id.imageView1);
TextView textview = (TextView)this.findViewById(R.id.textView1);
Handler handler = new counterHandler(textview);
countThread thread = new countThread(handler);
new Thread(thread).start();
//为imageview添加监听器
imageView.setOnTouchListener(new OnTouchListener(){
//重写里面的方法,最后的return设置为true
//这里的View v中的v指的是操作的第一个对象,在这里指的是ImageView对象
@Override
public boolean onTouch(View v, MotionEvent event) {
//现在已经到了画图板的界面,现在需要添加组件实现画图板的一些简单的功能
//需要使用到画图工具Bitmap类,Canvas画图类
//这里的Bitmap不能用以往常规的构造对象的方法,参看Bitmap的源代码可以知道,
//它的构造函数被设置为默认的类型,所以不能在包以外调用该构造方法
//现在我们用下面的方法createBitmap(width, height, config)来得到Bitmap的对象
//设置width和height为组件ImageView对象的长和宽,config指的是设置选择颜色样式
bitmap = Bitmap.createBitmap(v.getWidth(), v.getHeight(),Bitmap.Config.ARGB_8888 );
canvas = new Canvas(bitmap);
paint = new Paint();
//设置画笔的颜色
int c = Color.rgb(0, 255, 255);
paint.setColor(c);
//现在开始可以进行画图了
//得到触摸点的坐标,注意用event,注意这里的类型是float类型
float x = event.getX();
float y = event.getY();
//Canvas的画圆的方法:drawCircle(cx, cy, radius, paint)
canvas.drawCircle(x, y, 50, paint);
//最后有一步很重要的方法,将ImageView显示
//前面已经讲到了View v在这里表示的即是ImageView组件,现在将其强制转化为ImageView类型
ImageView showView = (ImageView)v;
//显示出bitmap
showView.setImageBitmap(bitmap);
//实现界面的更新
// showView.invalidate();
return true;
}
});
}
第三步
看下最终的效果:
首先是登录:
然后是登录成功:
最后用手指滑动,绘画出一个小黑圆:
以上就是简单的画图板的实现啦,现在我们可以发挥自己的创造力,设计更加棒的画图板,赶紧去添加你的功能吧!