1.ArrayAdapter的使用(看情况学下咯,毕竟BaseAdapter还是能满足大部分情况)
这个BaseAdapter的子类很有用!不要开发了那么久只知道BaseAdapter(反正我是这种人)。当集合类条目较多,比如超过100条(敢一次性拉你试试看,你组长保证不砍你,因为一般都是分页加载的呐)或频繁动态增减item(反正之前有个listview里面的数据集经常需要改,所以写回调写得想shi),这两种情况使用arrayadapter可以方便控制ui,通过setNotifyOnChanage方法,如果比较简单仅仅呈现直接从 baseadapter更节省资源。
2.Android MVP模式开发(真心得会)
android MVC,一个奇葩的概念性存在,反正我是信了它地邪,感觉在Android开发里面挺难体现出这种模式,不像J2EE那样如此明显的。以前开发的时候像什么后台的任务之类的,都丢在对应的Activity里面去开启线程去抓,比如在Activity的onCreate()方法里面调用loadData()方法去后台抓数据。如果你的Activity界面随着项目业务越来越多了,那你的onCreate方法或者其他地方就要拼命的跟上loadData_one()、loadData_two()、loadData_three()...掐指一算,整个项目只用了几个Activity,每个Activity几千行代码(反正我见过,维护起来想吃shi的心都有了),如此牛鼻的Activity又称它万能Activity,你可以坚持这么干,as long as you happy。MVP模式,简单的说就是把请求后台的任务丢到另外一个类里面,你调用那个类就完事了,但是这样会多出很多个presenter类(每个业务包含的接口都丢到一个presenter类里面,比如说用户登录注册注销业务)
public class UserPresenter {
public static void login() { /** something to do **/}
public static void register() { /** something to do **/}
public static void unRegister() { /** something to do **/}
}
毕竟每个业务都有自己请求后台的任务,类多倒不怕,哪天你项目别人接手了,最多就删点业务类,比较灵活点,维护方便,但如果你让人接手几千行代码的Activity的,额,想想还是蛮激动的,谁会是我的下一个呢![得意](http://static.blog.csdn.net/xheditor/xheditor_emot/default/proud.gif)
![得意](http://static.blog.csdn.net/xheditor/xheditor_emot/default/proud.gif)
3.Android 适配方案(真心要会)
3.1 掌握几个概念!!
a.屏幕尺寸 :设备对角线长度,单位英寸。
b.屏幕分辨率:横纵方向的像素数,如480*320,1280*720。
c.屏幕像素密度:每英寸的像素点数,单位dpi。获取方式是根据勾股定理,两个边(横纵像素数)的平方和,再进行平方开根,再除对角线长度,即得。
3.2 布局控件使用下面的东西:
a.控件宽高用dp/dip;字体大小用sp
b.相对布局灵活点,线程布局用比重weight
3.3 有平板适配的需求就使用限定符:其中large是针对安卓3.2版本之前的平板设备,3.2之后google推出了sw的限定符
a.在res/values、res/values-large、res/values-sw600dp-land(land表示设备水平方向放置状态)、res/values-sw600dp-port(port表示设备竖直方向放置状态)等放置不同的dimens.xml尺寸去适应,其实还可以有res/values-large-xhdpi等等多种方式。
以上只是对布局尺寸大小做好适配,如果同一个activity在小屏幕,大屏幕或者横着放的屏幕要求有两种或以上的布局显示方式,同样通过限定符来显示不同的布局
3.4 小屏幕布局与大屏幕布局的适配:
a.准备好两套或以上(两三套就已经很多啦!!!)的布局. main.xml、main_second.xml
b.分别放在res/layout/main.xml、res/layout-large/main_second.xml、res/layout-sw600dp/main_second.xml
3.5 针对不同屏幕尺寸设备图片的适配
a.叫UI妹子把一个图准备几种规格给你就行,然后你对应放到drawable-hdpi、drawable-mdpi、drawable-xhdpi、drawable-xxhdpi里面就行
3.6 适配主要从以上几点入手,还真没几行就总结完了!
![得意](http://static.blog.csdn.net/xheditor/xheditor_emot/default/proud.gif)
附图:
4.实现Activity页面切换的动画
使用:overridePendingTransition (int enterAnim, int exitAnim);
overridePendingTransition 方法必须在startActivity()或者 finish()方法的后面
下次再更新。。。