Android开发
来源:互联网 发布:读读日报 知乎日报 编辑:程序博客网 时间:2024/05/12 01:16
看了一本书Android开发的书(Android移动应用开发从入门到精通),然后给朋友做了一个项目,回头把那本书又看了一遍,有些查漏补缺的东西需要记录一下。
Activity事件顺序:
注意:
1:onResume是获取资源的最佳场所,尤其是在线程密集型应用中。可以做到先把Activity启动,然后慢慢加载资源。
2:onPause事件中适合停止、保存和释放Activity事件,被Pause的Activity会自动保存页面数据,但是在用户清理内存或者系统内存较低的情况下,会被自动清除和关闭。因此,onPause事件是Activity最后一次彻底保存数据的地方。onPause事件操作最好不要耗时太多,因为新的Activity要在当前Activity的onPause事件执行完以后再启动。
3:onUserInteraction事件是当Activity运行过程中,按键、屏幕等被初始化时调用此方法
4:onUserLeaveHint事件是Activity正在运行时,用户按了返回键或者Home键离开当前Activity时、在onPause事件发生前触发
5:onSaveInstanceState事件用于保存当前Activity的数据到Bundle中,在onResume事件触发时利用传递的Bundle参数恢复数据,但是此事件不保证所有情况下都能保存数据,所以onPause事件是保存Activity的最佳地方。
6:onDestroy事件在两种情况下发生:自然结束或系统因为内存等原因强行结束。
Activity跳转:
Activity跳转由两种方式:startActivity()和Intent,前一种可以实现直接启动其它Activity,比如启动页启动主菜单页,startActivity()加上Finnish()可以完美解决启动页再次被调用的情况。
动画:
动画类是android.view.animation.AnimationUtils中
动画包括三种:
1、 载入gif图片。
2、 逐帧动画。定义各个帧的图片(用BitmapDrawable类定义),用AnimationDrawable类将加载所有BitmapDrawable类,并设置时间间隔。
3、 补间动画。各帧之间的补充动画操作由系统自动完成,分四种:透明(Alpha)、旋转(Rotate)、缩放(Scale)、移动(Tanslate)。
先定义补间,有两种方式:XML(在/res/anima/下创建某种补间定义)和程序定义(例如旋转补间:RotateAnimation类),然后由具体的补间对象对具体的动画元素(比如图片)实现四种补间动画效果。也可以同时定义多种动画效果。
图形:
1、 绘制图像。通过继承View类、实现OnDraw方法获取Canvas类进行绘制
2、 绘制自定义字体。canvas.DrawText(“自定义字体”,20,20,Paint类);
3、 绘制图片。canvas.DrawBitmap();
4、 旋转图片。Matrix类操作。
5、 绘制常用的图形,矩形等。用ShapeDrawable类。
系统资源:都存放在/tools/lib/res/default
Android布局:
Android所有Widget和布局的基类是android.View类
AdapterView:
AdapterView主要包括ListView、GridView和GalleryView等。AdapterView主要用Adapter类(主要包括ArrayAdapter和CursorAdapter)实现赋值。
Tab页面
Tab页面由TabActivity和TabHost组成。TabHost由TabSpace组成。
Switch
Switch一般包括ImageSwitch和TextSwitch两种
ScrollView
有滚轴的页面
SlidingDrawer
有手柄的控件,按住手柄可以滑动控件
多线程:线程类.queueEvent用于加入主线程,线程类.post是返回主线程
地图:
可以采用com.google.android.maps.MapView控件访问google地图
相机:
用Camera类进行操作
电话:
用TelephoneManager类操作
3D:
使用OpenGL ES操作
硬件操作:
设备传感器包括地磁传感器、加速度传感器和Wi-Fi传感器等,前两个使用SensorManager类进行操作。Wi-Fi传感器使用WiFiManager类进行操作。
通知:
通知使用Notification类进行操作。可以通过状态栏发布通知,可以使用震动、声响发布通知,也可以使用自定义通知发布通知。
服务:
服务有两种包括后台服务和远程对象调用接口。通过集成Servise类并实现onCreate、onStart和onDistroy方法。
销售:
使用proguard工具(proguard.sourceforge.net)可以将android程序编译打乱,难以反汇编。
- android 开发
- Android 开发
- Android 开发
- android开发
- android开发
- android开发
- Android开发
- Android开发
- Android开发
- android开发
- android开发
- Android 开发
- Android开发
- Android 开发
- Android 开发
- Android开发
- android 开发
- android 开发
- MSYQL批量执行一下.SQL
- iOS开发——keychain的使用
- C++ stl六大组件
- CI框架源码阅读笔记7 配置管理组件 Config.php
- java日期的加减
- Android开发
- hadoop mapReduce程序模板-倒排索引
- c语言位运算符
- MySql启动服务1067错误解决办法
- linux进程状态查询
- 深圳市中聚网络科技有限公司 招聘:中高级java工程师
- spring的异常
- 【Android】Fragment与Activity通信
- HDU 5101 Select (二分)