码迷,mamicode.com
首页 > 移动开发 > 详细

android开发注意事项

时间:2016-12-29 14:06:10      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:override   err   list   自己的   color   class   util   over   其他   

写到哪里算哪里,从新项目 说说我怎样开发       

1.新建项目,创建自己的application

在Application中初始化xutils3和自己的UncaughtExceptionHandler,统一管理应用退出   添加,移除 activity栈 

各Activity继承自己的Activity_Base(方便后期统一处理),每个activity添加进栈(不继承,手动添加进栈  主要为应用退出)

2.命名方式(极大的提高开发效率) eg: 

Activity------>Activity_Base

Fragment---->Fragment_Base(类型_功能)

adapter----->Adapter_Fragment_Order (哪个类的adapter)

layout------->activity_base(类名小写)

3.注解   eg:

 //布局注解

@ContentView(R.layout.activity_md_using_surface_view)
public class VideoPlayerActivity extends Activity_Base

 

 //view注解

@ViewInject(R.id.button_add_plugin) Button button_add_plugin; //添加plugin

//(点击,长按等)事件注解
@Event(R.id.button_add_plugin)  private void add(View view) {L.i("点击添加");}//按钮添加plugin事件,单击(type可省)
@Event(type = View.OnLongClickListener.class,value=R.id.vr_down)
private boolean vr_down_long(View view){ L.i("选项 长按down");//长按

4. 高内聚,低耦合   

4.1.应用内通讯可用eventbus替代handler 或广播

4.2逻辑的解耦合 eg:网络请求,把请求与解析,展示 分离开(核心,代码按顺序执行,逻辑分步骤实现)

public void getData(){
         x.task().run(new Runnable() {
             @Override
             public void run() {
                 RequestParams params = new RequestParams("http://www.baidu.com/login.php");//接口地址
                 params.addBodyParameter("username","123");
                 params.addBodyParameter("password","123");
                 try {
                  final String result=x.http().postSync(params, String.class);//在异步任务里进行同步请求,拿到请求结果str
                    //拿到json,进行解析,我封装的fastjson
                    List<UserInfo> list =JsonUtil.parasList(result,UserInfo.class);

                    //绑定bean到adapter或者其他方式更新ui,runOnUithread 也可以
                     x.task().autoPost(new Runnable() {
                         @Override
                         public void run() {
                             //text.setText("更新ui");
                         }
                     });

                }catch(Throwable e){e.printStackTrace();}



             }
         });
    }

5.关于多层回调嵌套的问题,和异步任务的解耦合 可以参考这里的实现  

https://github.com/Aiushtha/Android-LessCallBack

6.

     

 

  

 

android开发注意事项

标签:override   err   list   自己的   color   class   util   over   其他   

原文地址:http://www.cnblogs.com/andlp/p/6232350.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!