andriod中一些需要注意的问题
2017-10-13 11:48
176 查看
andriod中一些需要注意的问题
转载请注明出处http://blog.csdn.net/qq_33536981/article/details/78224379
楼主马上就转去学习C++做游戏了,android的学习就要暂时停止一段时间了,有一些我学习时遇到的问题,我再次分享出来希望可以帮助到大家1:environment.getexternalstoragedirectory()
获取外部储存(包含SD卡)2:自定义View时可以MeasureSpec获取View的测量模式和大小。
3:创建Canvas时 一般传入一个Bitmap对象,为了让所有绘制都在这个Bitmap上完成。
4:viewGroup会调用dispatchDraw方法来绘制子View
5:canvas.save();和canvas.restore();是两个相互匹配出现的,作用是用来保存画布的状态和取出保存的状态的
当我们对画布进行旋转,缩放,平移等操作的时候其实我们是想对特定的元素进行操作,比如图片,一个矩形等,但是当你用canvas的方法来进行这些操作的时候,其实是对整个画布进行了操作,那么之后在画布上的元素都会受到影响,所以我们在操作之前调用canvas.save()来保存画布当前的状态,当操作之后取出之前保存过的状态,这样就不会对其他的元素进行影响6:postInvalidateDelayed可以用来刷新View
7:LinearGradient
LinearGradient shader = new LinearGradient(0, 0, endX, endY, new int[]{startColor, midleColor, endColor},new float[]{0 , 0.5f, 1.0f}, TileMode.MIRROR);其中参数new int[]{startColor, midleColor, endColor}是参与渐变效果的颜色集合,
其中参数new float[]{0 , 0.5f, 1.0f}是定义每个颜色处于的渐变相对位置,
这个参数可以为null,如果为null表示所有的颜色按顺序均匀的分布
8:向量的叉乘可以判断点的顺逆时针
*用于做旋转判断9:postInvalidate()和invalidate()
postIncalidate()可以在线程中调用。invalidate()不可以在线程中调用。
10:getWritableDatabase() 和 getReadableDatabase()
getWritableDatabase()读的方式来打开数据库,要是没有写就会报错getReadableDatabase()读和写的方式来打开数据库
11:contentProvider 由系统调用,必须有个无参构造器
12:ContentUris.withAppendeId(Uri,id) 返回id 的Uri
13:setContentView()作用
14:activity、window和view之间的关系
而当我们运行程序的时候,有一个setContentView()方法,Activity其实不是显示视图(直观上感觉是它),实际上Activity调用了PhoneWindow的setContentView()方法,然后加载视图,将视图放到这个Window上,而Activity其实构造的时候初始化的是Window(PhoneWindow),Activity其实是个控制单元,即可视的人机交互界面。15: Message message = Message.obtain();
可以复用一些Message16:时间转化
SimpleDateFormat formatter = new SimpleDateFormat ("yyyy年MM月dd日 HH:mm:ss"); Date curDate = new Date(System.currentTimeMillis()); String data = formatter.format(curDate);
由于楼主是很晚才开始做笔记了,所以就只有这些了,大家学习的时候一定要勤做笔记,不然一定时间就忘了!
android暂时就到这了,我要开始另一个坑了,希望大家学习有什么好的方法和想法都分享出来,这样我们才能更厉害!!!
相关文章推荐
- 使用STC15W4K系列单片机需要注意I/O口的一些问题
- Linux系统安全需要注意的一些问题
- 使用Linux raw socket时需要注意的一些问题
- jQuery调用WCF需要注意的一些问题
- 使用VS2005开发64位驱动程序需要注意的一些问题
- Android替换字体时需要注意的一些问题
- oracle——06表查询中需要注意的一些问题
- Filter一些需要注意的问题
- .net调用C++代码需要注意的一些问题
- C++程序员在学习C#时需要注意的一些问题(一)
- jQuery调用WCF需要注意的一些问题(转dudu)
- 选择TTL和CMOS混合电路时需要注意的一些问题
- 使用MySQL Connector 6+ 版本需要注意的一些问题
- Cocos2d-x 3.0 Android修改APK名、更改图标、修改屏幕方向、修改版本号,一些需要注意的问题
- FFMPEG视频编码需要注意的一些问题
- Command探究and jQuery调用WCF需要注意的一些问题
- 解析256色位图需要注意的一些问题
- 总结移动端页面开发时需要注意的一些问题
- 安装Windows和Linux双系统需要注意的一些问题
- Dialog使用中需要注意的一些问题