文档章节

android SurfaceView的简单使用

东西南瓜西葫芦
 东西南瓜西葫芦
发布于 2015/06/23 11:35
字数 203
阅读 24
收藏 0

钉钉、微博极速扩容黑科技,点击观看阿里云弹性计算年度发布会!>>>

package com.example.aa;

import android.app.Activity;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Rect;
import android.os.Bundle;
import android.view.SurfaceHolder;
import android.view.SurfaceView;

public class MainActivity extends Activity {
	boolean isT = false;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
//		setContentView(R.layout.activity_main);
		setContentView(new MyView(this));
	}
	class MyView extends SurfaceView implements SurfaceHolder.Callback{
		SurfaceHolder holder;
		MyThread myThread;
		public MyView(Context context) {
			super(context);
			// TODO Auto-generated constructor stub
			holder = this.getHolder();
            holder.addCallback(this);
            myThread = new MyThread(holder);//创建一个绘图线程
		}
		public void surfaceCreated(SurfaceHolder holder) {
			// TODO Auto-generated method stub
			myThread.start();
		}
		public void surfaceChanged(SurfaceHolder holder, int format, int width,
				int height) {
			// TODO Auto-generated method stub
			
		}
		public void surfaceDestroyed(SurfaceHolder holder) {
			// TODO Auto-generated method stub
			isT = false;
		}
		
	}
	class MyThread extends Thread{
		SurfaceHolder holder;
		public MyThread(SurfaceHolder holder) {
			// TODO Auto-generated constructor stub
			this.holder = holder;
			isT = true;
			
		}
		public void run() {
			// TODO Auto-generated method stub
			
			int i = 100;
			while(isT){
				Canvas c = null;
				try {
					synchronized (holder) {
						c = holder.lockCanvas();
						c.drawColor(Color.BLACK);c.drawColor(Color.BLACK);
						Rect rect = new Rect(100,i,100,100);
						Paint paint = new Paint();
						paint.setColor(Color.WHITE);
						c.drawRect(rect, paint);
						c.drawText("i:jhkhj",100,i, paint);
						i+= 100;
						if (c!=null) {
							holder.unlockCanvasAndPost(c);
						}
						Thread.sleep(3000);
					}
				} catch (InterruptedException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
			super.run();
		}
	}
}


东西南瓜西葫芦
粉丝 1
博文 23
码字总数 7490
作品 0
临沂
程序员
私信 提问
加载中
请先登录后再评论。
获取Android设备上的详细的摄像头信息

如何获取Android设备上的详细的摄像头信息呢? 目前Samsung的Galaxy Tab和Nexus S均有前置摄像头,获取Android摄像头的详细信息,在Android 2.3SDK中得到了增强: 在android.hardware.Camera类...

子曰疯
2013/12/26
1W
2
android中使用surfaceview+MediaPlayer播放视频

Android中播放视频主要有两种方式: 使用其自带的播放器。指定Action为ACTION_VIEW,Data为Uri,Type为其MIME类型 使用android自带的VideoView,这种方法太简单就不介绍了 使用SurfaceView+Med...

天王盖地虎626
2018/12/24
32
0
[ARCore] 00 - The First Demo

入門介紹 背景交代 一、参考 Ref: [Android-ARCore开发]ARCore从入门到放弃1-Demo上手 Ref: [Android-ARCore开发]ARCore从入门到放弃2-Demo介绍和扩展 Ref: ARcore初体验 -- 在Android模拟器...

osc_ft59t5i9
2018/06/16
2
0
【Android游戏开发之六】在SurfaceView中添加组件!!!!并且相互交互数据!!!!

李华明Himi 原创,转载务必在明显处注明: 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/android-game/306.html 很多童鞋说我的代码运行后,点击home或者back后会程序异常,...

迷途d书童
2012/03/19
456
0
录制视频

public class RVideoActivity extends Activity implements SurfaceHolder.Callback { private ImageView start;// 开始录制按钮 private ImageView stop;// 停止录制按钮 private MediaRec......

带梦想一7飞
2013/04/22
100
0

没有更多内容

加载失败,请刷新页面

加载更多

YGC问题排查,又让我涨姿势了!

在高并发下,Java程序的GC问题属于很典型的一类问题,带来的影响往往会被进一步放大。不管是「GC频率过快」还是「GC耗时太长」,由于GC期间都存在Stop The World问题,因此很容易导致服务超时...

erlieStar
昨天
0
0
碰上这4种项目经理,项目必死无疑

项目经理不是谁想当就能当的,除了精通业务,至少懂一些基础的技术知识外,还要拥有“项目经理式的人格”。 比如:任务导向、目标意识、高效、灵活、计划性强等。 而与之相对的,有四种类型的...

logiter
2019/12/20
0
0
Oracle 11g 数据库的部署

新手入门之Oracle 11g部署 Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目...

开源仔
29分钟前
0
1
整理 Linux下列出目录内容的命令

在 Linux 中,有非常多的命令可以让我们用来执行各种各样的任务。当我们想要像使用文件浏览器一样列出一个目录下的内容时,大家第一时间想到的是 ls 命令。但只有 ls 命令能实现这个目的吗?...

osc_q7wo0k6s
29分钟前
16
0
漫画:什么是SnowFlake算法?

本文转载自公众号 [程序员小灰] ————— 第二天 ————— 方法一:UUID UUID是通用唯一识别码 (Universally Unique Identifier),在其他语言中也叫GUID,可以生成一个长度32位的全局唯一...

无敌码龙
2019/03/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部