`
luozhong915127
  • 浏览: 188825 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
文章分类
社区版块
存档分类
最新评论

android部分介绍

阅读更多

 

读API,我们可以发现J2ME中Canvas的repaint()与Android中 View的invalidate()/postInvalidate()方法实现了相同的功能(连说明文字几乎都一样…), 但是invalidate()/postInvalidate()两者却有着区别:invalidate()只能在UI这个线程里通过调用onDraw(Canvas canvas)来update屏幕显示,而postInvalidate()是要在non-UI线程里做同样的事情的。

<!--EndFragment-->

 

 代码如下:

      先创建入口类,其中定义一个
public class AndroidActivity extends Activity implements Config {
	static BirdUI image;
	static int id1;

	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		// 设置当前Activity界面布局
		setContentView(R.layout.main);
               }
}

 BirdUI类继承了ImageView,可以直接通过对象调用invalidate()/postInvalidate(),其中onDraw(Canvas canvas)是mageView的自己的方法。 BirdUI类中有两给方法:

public void showImage() {
		// 设置bitmap的图片资源
		bitmap = Bitmap.createBitmap(BitmapFactory.decodeResource(
				getResources(), R.drawable.bird1));
		// 设置bitmap1的图片资源
		bitmap1 = Bitmap.createBitmap(BitmapFactory.decodeResource(
				getResources(), R.drawable.pig1));
	}

	// 重写onDraw方法
	public void onDraw(Canvas canvas) {

		// 执行父类的onDraw方法
		super.onDraw(canvas);
		if (bitmap != null) {
			// 遍历小猪线程,绘制小猪
			for (PigThread pig : pigs) {
				// 画小猪
				canvas.drawBitmap(bitmap1, pig.x, pig.y, paint);
			}
		}
		// 在BirdThread.xx,BirdThread.yy坐标处画图bitmap图形
		// 画小鸟
		//System.out.println("BirdThread.xx" + BirdThread.xx + "BirdThread.yy"
				//+ BirdThread.yy);
		if (bitmap != null) {
			canvas.drawBitmap(bitmap, BirdThread.xx, BirdThread.yy, paint);
		}
	}

 在主类运用线程,1,在线程里启动小猪线程              

               2,启动小鸟线程

  代码如下:

new Thread() {
       public void run() {
             while (true) {
							try {
								sleep(1500);
								// 创建小猪对象
								PigThread pig = new PigThread();
								// 启动小猪对象
								pig.start();
								// 添加到在接口Config中定义ArrayList<PigThread>		// pigs=newArrayList<PigThread>();
								// 便于遍历
								pigs.add(pig);
							} catch (Exception e) {
								e.printStackTrace();
							}
       }
}
	}.start();
	// 创建小鸟对象
	BirdThread bbar = new BirdThread();
	// 启动线程
	bbar.start();

 

 他不是运用在本线程里,而是非本线程里。不能引用invalidate(),而只能 引postInvalidate。才能起到嵌套线程的作用。他不是運用在本线程里,而是非本线程里。

 生命周期的诠释

 http://xiaoruanjian.iteye.com/blog/1369325

   呵呵,我觉得很全面,里面下了功夫。

 

  

  请各位前辈指点,如有改正的地方,请各位前辈指正,呵呵额,谢谢。

 各位同仁,也可以提意见,呵呵,谢谢。

 

 

 

 

 

 

 

 

 

 

1
0
分享到:
评论

相关推荐

    android入门-课程介绍

    【Android入门课程介绍】 在数字化世界中,Android操作系统占据着移动设备市场的主导地位,因此学习Android开发成为许多技术爱好者和职业开发者的重要技能。本课程专为初学者设计,旨在帮助学员快速掌握Android应用...

    android系统框架介绍

    android系统框架介绍,Android系统 = Linux内核 + Android运行时。 Android系统使用的Linux内核包含了一些专用驱动,例如Logger、Binder、Ashmem、Wakelock、Low-Memory Killer和Alarm等,这些Android专用驱动构成了...

    android TextView 文字部分渐变

    在Android开发中,有时我们需要为应用的用户界面增添一些视觉上的亮点,比如让TextView中的文字部分呈现出渐变色效果。这不仅可以吸引用户的注意力,也可以使界面更具设计感。本篇文章将详细讲解如何在Android中实现...

    Android内核和驱动篇-Android内核介绍

    Android 内核和驱动篇-Android 内核介绍 Android 内核是基于 Linux 2.6 内核的,它是一个增强内核版本,除了修改部分 Bug 外,它提供了用于支持 Android 平台的设备驱动。Android 内核的核心驱动主要包括: 1. ...

    android bsp介绍

    本文将详细介绍Android BSP的相关概念,包括Android架构、框架、库及内核等内容,帮助读者深入理解Android BSP的核心组成部分及其在实际开发中的应用。 #### 二、Android BSP概述 BSP主要包含以下几个方面: 1. *...

    android框架与应用开发介绍

    Android框架与应用开发是移动开发领域中的核心组成部分,它涵盖了从系统级的框架设计到用户界面的构建,以及应用程序的实现和优化等多个方面。在这个领域,开发者需要掌握一系列技术和工具,以便创造出高效、稳定且...

    Android Framework介绍 Dalvik原理 JIT介绍

    Dalvik虚拟机(Dalvik Virtual Machine, DVM)是Android系统的核心组成部分之一,它是一种专为移动设备设计的虚拟机。与传统的Java虚拟机(JVM)相比,Dalvik具有以下特点: 1. **DEX格式**:Dalvik虚拟机使用.dex文件...

    Android介绍&开发环境搭建.ppt

    【Android介绍】 Android是由Google开发并维护的开源操作系统,专为移动设备如智能手机和平板电脑设计。它的名字来源于“机器人”一词,自2007年11月5日首次公布以来,Android已经成为全球最广泛使用的智能手机操作...

    AndroidSDK介绍

    在“第3章 清点可用资本——Android SDK介绍.wmv”这个视频文件中,可能涵盖了如何使用SDK Manager下载SDK组件,如何设置开发环境,以及如何使用Android Studio进行初步开发的教程。"readme.txt"可能提供了关于这些...

    Android ArcGIS 部分API中文说明文档

    本文档对 Android ArcGIS 部分API进行了详细的介绍和解释。 一、MapView 类 MapView 是 ArcGIS 平台在 Android 系统上的地图容器,提供了多种方法来实现地图的显示和交互。其中,addLayer(Layer layer) 方法用于...

    android 部分基本组件

    本文将详细介绍几种Android基本组件的功能与使用方法,包括`TextView`、`EditText`以及`TableLayout`。 #### TextView:文本框组件 `TextView`是Android中最常用的组件之一,用于在界面上展示文本信息。其主要属性...

    Android实现在TextView文字过长时省略部分或滚动显示的方法

    本篇将详细介绍如何在TextView中实现文字过长时的省略显示和滚动显示。 首先,TextView的`ellipsize`属性是一个关键,它定义了当文本超出TextView的边界时如何处理。以下为四种不同的`ellipsize`值及其效果: 1. `...

    Android 安装环境搭建

    描述部分对 Android 安装环境搭建进行了简要的介绍,强调了 Android 安装环境搭建的重要性。 标签部分只有一个标签“Android”,表明本节的内容是关于 Android 的。 部分内容对 Android 安装环境搭建进行了详细的...

    android框架与应用开发介绍.ppt

    Android框架与应用开发是移动开发领域中的核心组成部分,它为开发者提供了一个强大的平台来构建功能丰富的应用程序。Android框架包括一系列的组件和服务,这些组件协同工作,使得开发者能够创建交互式的用户体验,...

    ANDROID rild详细介绍

    下面将对 RIL 在 Android 操作系统中的实现进行详细介绍,并重点解释文档摘要与描述中提到的关键内容。 ### RIL (Radio Interface Layer) 简介 RIL 是 Android 系统中的一个关键组件,它作为应用程序层与底层硬件...

    Android应用开发案例教程(AndroidStudio版)_PPT课件.rar

    1. **Android基础** (01.pptx): 这一部分主要介绍Android系统的基本架构和组件,包括Activity、Service、BroadcastReceiver、ContentProvider等核心概念,以及AndroidManifest.xml文件的重要性。 2. **Android ...

    android bluetooth 介绍android 蓝牙工作原理

    Android蓝牙架构主要包括两个主要部分:Bluetooth Manager Service和Bluetooth Adapter。Bluetooth Manager Service是系统服务,负责管理蓝牙设备的全局状态,如开启、关闭蓝牙,以及扫描和连接设备。Bluetooth ...

    Android内核和驱动篇-Android内核介绍[归纳].pdf

    Android 内核和驱动篇-Android 内核介绍 Android 内核是基于 Linux 2.6 内核的,提供了用于支持 Android 平台的设备驱动。 Android 内核的核心驱动主要包括: 1. Android Binder:基于 OpenBinder 框架的一个驱动...

    Android的MediaPlayer架构介绍

    【Android的MediaPlayer架构介绍】 Android系统的MediaPlayer组件是其多媒体处理的核心部分,负责音频和视频的播放功能。在Android系统中,像Music和Video这样的应用程序都依赖于MediaPlayer来实现媒体内容的播放。...

    IT教程:老罗Android开发视频教程 Android入门介绍【9集全】

    6. **布局设计**:使用XML布局文件创建用户界面是Android开发的一部分。教程会涵盖LinearLayout、RelativeLayout、ConstraintLayout等布局管理器的使用。 7. **事件处理**:了解如何处理用户交互,如点击按钮或滑动...

Global site tag (gtag.js) - Google Analytics