android学习日记07--Canvas画布】的更多相关文章

Activity间的跳转 Android中的Activity就是Android应用与用户的接口,所以了解Activity间的跳转还是必要的.在 Android 中,不同的 Activity 实例可能运行在一个进程中,也可能运行在不同的进程中.因此我们需要一种特别的机制帮助我们在 Activity 之间传递消息.Android 中通过 Intent 对象来表示一条消息,一个 Intent 对象不仅包含有这个消息的目的地,还可以包含消息的内容,这好比一封 Email,其中不仅应该包含收件地址,还可以…
常用控件 9.Dialog 我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框 对话框,要创建对话框之前首先要创建Builder类创建者,Builder是AlertDialog的子类,而且还是它的内部类. setPositiveButton --设置最左边的按钮setNeutralButton --设置中间的按钮setNegativeButton --设置最右边的按钮 builder = new Builder(Ma…
常用控件3.checkbox 复选框,确定是否勾选,点击一下勾选,点击第二下取消,当有一系列备选项时适合用checkbox控件,方便用户提交数据. 贴上例子Activity的java代码 package com.example.checkbox; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.widget.CheckBox; import androi…
常用控件 控件是对数据和方法的封装.控件可以有自己的属性和方法.属性是控件数据的简单访问者.方法则是控件的一些简单而可见的功能.所有控件都是继承View类 介绍android原生提供几种常用的控件button/imagebutton.checkbox/radiobutton.progressbar/seekbar.tabSpec/tabHost.ListView.Dialog,主要为了掌握控件使用的一般规律. 1.button 按钮 Button是各种UI中最常用的控件之一,用户可以通过触摸它来…
一.android 界面开发 1.三个重要的类:View视图.Canvas画布.Paint画笔2.android 界面开发常用三种视图 View            --只能在主线程中更新,没有缓存机制,适合画面更新较少的界面,比如有按键按下才变化的界面. SurfaceView --可以设置独立的线程,有缓存机制,主要用于2D游戏 GLSurfaceView --主要用于3D游戏,暂时不学习 二.View框架 同SWIMG.AWT一样,Android也提供大量的View组件给开发者,所有组件…
1.Canvas Canvas类主要实现了屏幕的绘制过程,其中包含了很多实用的方法,比如绘制一条路径.区域.贴图.画点.画线.渲染文本,当然Android官网提示大家很多方法有不同的重载版本,参数更灵活. 2D部分是android SDK内部自己提供,3D部分是用Open GL ES(3D部分先直接pass,除非你要做些3D游戏之类的).大部分2D使用的api都在android.graphics和android.graphics.drawable包中. API参考地址http://android…
(一) Android 开发基础 1 Android平台的特性 1)  应用程序框架支持组建的重用和替换,包括打电话应用程序.文件管理器等. 2)  Dalvik虚拟机专门为移动设备做了优化,Dalvik虚拟机是基于寄存器的,相对于Java虚拟机速度要快很多 3)  内部集成浏览器基于开源的WebKit引擎 4)  优化的图形库包括2D和3D图形库 5) SQLite用作结构化的数据存储 等 2 Android的体系结构 分为4层,由上而下依次是应用程序.应用程序框架.核心类库和Linux内核.…
裁剪区域 裁剪是画布的一个函数,区域可以是矩形和圆形,也可以通过设置 path 或Region来显示自定义区域,通过不同组合,Android几乎可以支持任意现状的裁剪区域.android.graphics包中定义了Point, Rect, Path, Region 这几种几何形状,Path可以为有圆弧,椭圆,二次曲线,三次曲线,线段,矩形等基本几何图形或是由这些基本几何图形组合而成,Path可以为开放或是闭合曲线.Rect提供了定义矩形的简洁方法. //绘制一张背景图片,充满整个屏幕 Bitma…
Paint 要绘图,首先得调整画笔,待画笔调整好之后,再将图像绘制到画布Canvas上,这样才可以显示在手机屏幕上.Android 中的画笔是 Paint类,Paint 中包含了很多方法对其属性进行设置, Paint方法一般可分两类,图形的绘制和文本的绘制主要方法如下:(没有全部列出,大家可以查看官方文档http://android.toolib.net/reference/android/graphics/Paint.html ) canvas.drawColor(Color.GREEN);…
一.API关SurfaceView的介绍 SurfaceView是视图(View)的继承类,这个视图里内嵌了一个专门用于绘制的Surface.你可以控制这个Surface的格式和尺寸.Surfaceview控制这个Surface的绘制位置.      Surface是纵深排序的,这表明它总在自己所在窗口的后面.surfaceview提供了一个可见区域,只有在这个可见区域内 的surface部分内容才可见,可见区域外的部分不可见.surface的排版显示受到视图层级关系的影响,它的兄弟视图结点会在…
一.综述 设计模式,根据前人经验总结出常见软件工程问题的解决思想套路.GoF一共归纳了23种设计模式,当然还有人扩充,不止这些.设计模式主要利用面向对象语言的特性,而android 的设计主要用JAVA语言,有很多地方用到设计模式. 二.设计原则 设计模式是遵循面向对象设计的五个设计原则来设计的,如下:1.单一职责原则(SRP)--一个类只能有一个职责,多个职责耦合在一起,会影响复用性.2.开放封闭原则(OCP)--对扩展是开放的,而对修改是封闭的3.Liskov替换原则(LSP)--继承必须确…
上次刚了解完Android的四大组件,现在学习组件间通信的Intent和IntentFilter 一.Intent 1.简述 Intent(意图)在应用程序运行时连接两个不同组件,是一种运行时的绑定机制.一般应用是通过Intent向Android系统发出某种请求,根据查询各个组件声明的IntentFilter,找到组件并运行它. 2.使用机制 前面介绍的四大组件中的Activity.Services.BroadcasReceiver的通信全部使用的是Intent,但是各个组件使用Intent的机…
一个Android应用主要由四个基本组件组成,Android四大基本组件分别是Activity,Content Provider内容提供者,Service服务,BroadcastReceiver广播接收器.其中Activity和Content Provider在前面都有介绍过.这里主要讲讲Service服务和BroadcastReceiver广播接收器. 一.Services(服务) 1.简述 Services(服务)简单来说就是剥夺界面的Activity.它和Activity很多概念都是相似的…
一.开发android,我们需要哪些技能基础 1.Java基础知识 2.Linux基础知识 3.数据库基础知识 4.网络协议 5.Android基础知识 6.服务器端开发知识 1.Java基础知识 很多朋友一上手就开始学习Android,似乎太着急了一些.Android应用程序开发是以Java语言为基础的,所以没有扎实的Java基础知识,只是机械的照抄别人的代码,是没有任何意义的.万丈高楼平地而起,Java就是筑起高楼的每一块砖头.那么Java学到什么程度才算是过关呢?我个人认为至少要掌握以下两…
Bitmap android里的图像处理重要的类,支持jpg.png.bmp等格式的图像,BitmapDrawable是封装Bitmap的一个对象,Bitmap实现在android.graphics包中.但是Bitmap类的构造函数是私有的,外面并不能实例化,只能是通过JNI(Java Native Interface JAVA本地调用)实例化.这必然是 某个辅助类提供了创建Bitmap的接口,而这个类的实现通过JNI接口来实例化Bitmap的,这个类就是BitmapFactory.利用Bitm…
一.Activity活动 学习Android,第一个都会接触Activity滴,Activity表示一个用户界面,是Android应用程序的入口,可以同时有多个界面,但只会显示栈顶的界面. Activity是Android的重要组成部分,一个程序包括多个Activity,新建项目都会有个程序启动时就调用的MainActivity.新定义Activity需在AndroidManifest配置. 如下是最简单的配置方式: <activity android:name=".OtherActivi…
1.[2013-10-03 13:45:38 - FileManager] res\drawable-xxhdpi\FileManager.jpg: Invalid file name: must contain only [a-z0-9_.] 文件名必须是小写字母.数字._和.  ,否则就会报错 2.应用icon设置位置在Manifest.xml中 android:icon="@drawable/file_manager" 3.设置activity不显示app_name Manifi…
一.Android网络通信 android网络通信一般有三种:java.net.*(标准Java接口).org.apache接口(基于http协议)和android.net.*(Android网络接口),涉及到包括流.数据包套接字(socket).Internet协议.常见Http处理等.android 内置HttpClient,简化和网站间的交互.但是不支持Web Services,需要利用ksoap2_android才能支持. 1.使用Socket进行通信 Socket通常也称作"套接字&q…
3.ContentProvider 数据在Android当中是私有的,当然这些数据包括文件数据和数据库数据以及一些其他类型的数据.ContentProvider实现多应用程序间的数据共享类一般利用ContentProvider为需要共享的数据定义一个URI(统一资源定位符)然后其他程序通过Context获得ContentResolver并将数据的URI传入即可 Android已为一些常用的数据创建ContentProvider,这些ContentProvider位于android.provide…
1.Dialog概述 对话框一般是一个出现在当前Activity之上的一个小窗口,处于下面的Activity失去焦点, 对话框接受所有的用户交互. 对话框一般用于提示信息和与当前应用程序直接相关的小功能. 2.Dialog 分类: 警告对话框 AlertDialog : 一个可以有0到3个按钮, 一个单选框或复选框的列表的对话框. 警告对话框可以创建大多数的交互界面, 是推荐的类型. 进度对话框 ProgressDialog: 显示一个进度环或者一个进度条. 由于它是 AlertDialog 的…
1.AIDL介绍 AIDL:Android Interface Definition Language,即Android接口定义语言. 由于每个应用程序都运行在自己的进程空间,并且可以从应用程序UI运行另一个服务进程,而且经常会在不同的进程间传递对象.在Android平台,一个进程通常不能访问另一个进程的内存空间,所以要想对话,需要将对象分解成操作系统可以理解的基本单元,并且有序的通过进程边界.这点有点像JAVA 里的RMI远程调用接口. AIDL (Android Interface Defi…
1.ANR(Application Not Responding)定义 在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作应用程序无响应(ANR:Application Not Responding)对话框.用户可以选择“等待”而让程序继续运行,也可以选择“强制关闭”.所以一个流畅的合理的应用程序中不能出现anr,而让用户每次都要处理这个对话框.因此,在程序里对响应性能的设计很重要,这样系统不会显示ANR给用户.默认情况下,在android中A…
菜单是任何应用程序必不可少的一项.按下Menu键或者长按某个View就会弹出相应菜单,当然前提是应用程序有实现菜单功能. Android平台下的菜单有:Options Menu(选项菜单).Submenu(子菜单).Context Menu(上下文菜单). 这次的案例用以前的索尼真机测试,就不贴代码和运行截图,主要贴些理论知识.菜单这块比较简单,代码实例看这位仁兄写的 http://www.cnblogs.com/giuz/archive/2010/10/19/1855235.html 一.选项…
一.简述 XML语言是跨平台,JAVA对XML语言支持得比较好,android系统的应用层平台是JAVA做的,所以用XML.XML解析比较简单.XML解析就是将获取到的数据分离出来,基本的网络数据传输,需要使用XML 比如天气预报,从网上获取的是XML文件,通过XML解析可以把天气状态读出来例: <forecast_date data="2009-07-31" /> <condition data="晴" /> <humidity da…
Animation动画主要有两种:帧动画(Frame Animation)和补间动画(Tween Animation).补间动画主要包括对位置.角度.尺寸等属性的变化,而帧动画则是通过若干帧图片轮流切换显示的. 1.帧动画 按顺序显示事先准备好的图片,跟动漫类似.主要用到的类AnimationDrawable,每个帧都是AnimationDrawable对象.定义帧动画可以在代码直接进行.也可以通过XML文件定义,定义帧动画的文件存放在res/anim目录下.XML指定帧出现的顺序及每个帧的持续…
二.BroadcastReciver(广播接收者) 1.简述 BroadcastReciver位于android.content包下,主要用于对广播消息(Intent)的过滤并响应的控件.可以理解为全局的监听器.BroadcastReceiver 自身并不实现图形用户界面,但是当它收到某个广播消息后,BroadcastReceiver可以启动Activity作为响应,或者启动Service服务等等. 2.运行原理 当其他应用程序发出广播消息之后,所有注册了BroadcastReciver的应用程…
一.Adapter 1.简述 最近学的GridView和Gallery 都有用到Adapter适配器,发现它貌似蛮重要的.专门上网搜了下有关Adapter的资料.android绝大多数应用是JAVA语言编写的,Adapter在JAVA里是专门的一种设计模式,目的是使两个原本没有关联的类结合一起使用.比如水管A是25mm的,水管B是40mm的,假设水管厚度不计,怎样连接两种水管一起使用?这时就需要适配器C,适配器C类似水管, 一头25mm,另一头40mm,这样就可以连接A.B水管一起使用了. 2.…
一.Gallery 1.简述 Gallery有道翻译为画廊,就叫它画廊控件,主要用来可切换的图片展示,左右滑动可以选择上一张或下一张图片. 个人感觉蛮实用的,不过google貌似不推荐使用啊! 2.常用属性和对应方法如下: 3.简单例子: 实现如下例子,C.C女王图片坐镇 Activity代码: // 要展示图片的ID数组 int[] imageIDs={ R.drawable.item0,R.drawable.item1,R.drawable.item2, R.drawable.item3,R…
一.GridView 1.简述 GridView按照行列来显示图片或文本的一种视图,排列其实有点类似TableLayout布局, 不过和TableLayout还是差别很大的,倒比较像二维的ListView.位于android.widget包下,常常用来实现类似九宫格的图像.实现手法和ListView有点相似,用Apapter把数据绑定到控件上,为容器提供子视图,利用视图的数据和元数据来构建每个子视图自定义Adapter显示.如果需要自定义适配器 可以扩展抽象类BaseAdapter. 2.常用属…
一.WebView 1.简述 WebView(网络视图)内置WebKit引擎,能加载显示网页,还支持JS,并且能够在Android平台使用AJAXWebView可以在布局中声明,也可以在Activity中直接实例化 2.主要步骤 使用WebView 的主要步骤:1.在布局文件中声明WebView,通过findViewById或在Activity中实例化WebView组件:WebView webView = new WebView(this);2.调用WebView的loadUrl()方法,设置W…