Activity的静态start方法

原创 2015年11月21日 16:59:21

1、为业务Activity的 增加一个   静态start方法, 将启动本Activity所需要的参数全部标明在start方法的参数上, 这样的写法的好处有如下几点:

     a、让 业务Activity的用法更加清晰,便于调用此 业务Activity 的开发者了解 启动这个Activity所需要的参数

     b、让 Activity 的职责 更加 单一 , 减少团队成员间不必要的沟通。     

            试想,两个 安卓开发者 A和B,A编写ActivityA 的 代码,B编写ActivityB的代码,   当大家的任务都完成之后,最后开始集成,  在ActivityA里 需要 启动 ActivityB 并传递一些参数过去, 这时 A开发者 就 必须去 询问B开发者 需要哪些参数 以及 参数 的名称,  或A直接 去阅读 ActivityB的源码, 这样 白白 增加 许多 沟通集成 成本 。


写法如下:


public class CommentActivity extends BaseActivity{

    public static final String INTENT_EXTRA_COMMENT_DATA = "extra_comment_data";


    public static void start(Context context, ExtraCommentData extraCommentData) {
         Intent intent = new Intent(context, CommentListActivity.class);
         intent.putExtra(INTENT_EXTRA_COMMENT_DATA, extraCommentData);
         context.startActivity(intent);
    }
    public static void start(Context context, 参数2  名称, 参数3 名称) {
         Intent intent = new Intent(context, CommentListActivity.class);
         intent.putExtra(INTENT_EXTRA_COMMENT_DATA, extraCommentData);
         intent.putExtra(参数2, 名称2);
         intent.putExtra(参数3, 名称3);
context.startActivity(intent); }

}

如果 ActivityB 包含 多种启动用法, 可以根据参数 重载 出几个 start 方法,仅仅是 参数不同而已

         intent.putExtra(INTENT_EXTRA_COMMENT_DATA, extraCommentData);
         intent.putExtra(INTENT_EXTRA_COMMENT_DATA, extraCommentData);

Unable to start activity ComponentInfo 解决方法

 错误信息如下: ERROR/AndroidRuntime(327): java.lang.RuntimeException: Unable to start activity ComponentIn...

Unable to start activity ComponentInfo 解决方法

解决案例一: 错误信息如下: ERROR/AndroidRuntime(327): java.lang.RuntimeException: Unable to start activity C...

Activity class {package/class} does not exist及Unable to start activity ComponentInfo 解决方法

写这篇随笔,我顶着很大的压力的,被看到定会引来一片鄙视。前思后想,为了警示以后不犯类似错误,最后一咬牙一狠心一跺脚,写出来共勉。   今天中午休息时间写的一个小练习,结果出现一下两种错误:   ...

(大总结)从寻找fragment静态导入activity总是失败的解决方法中了解android应用的系统启动过程

fragment静态导入activity

Activity start Service

  • 2015年10月04日 08:32
  • 1.8MB
  • 下载

Android中调用startActivity结果导致:java.lang.RuntimeException: Unable to start activity ComponentInfo{xxx}

Android中调用startActivity结果导致:上网查了一下,总结如下: 第一种情况:java.lang.RuntimeException: Unable to start activity...

Android运行异常:Unable to start activity ComponentInfo{}: android.view.InflateException: Binary XML file

Android运行异常 android.view.InflateException: Binary XML file line #异常:此类异常如图: app由于无...

java.lang.RuntimeException:Unable to start activity ComponentInfo{com.meizu.beautify/com.my.viewc.Ma

在使用fragment的时候,遇到如下的bug: java.lang.RuntimeException:Unable to start activity ComponentInfo{com.meizu...

Glide类似You cannot start a load for a destroyed activity异常简单分析

最近在做项目时,使用Glide加载网络图片时,碰到了 You cannot start a load for a destroyed activity 这个异常; 场景描述:点击进入一个Activ...
  • loners_
  • loners_
  • 2017年06月20日 22:22
  • 462

java.lang.RuntimeException: Unable to start activity ComponentInfo

一个错误找了好久,找到怀疑人生,居然是图片大小的问题!!!public class MainActivity extends AppCompatActivity { @Override ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Activity的静态start方法
举报原因:
原因补充:

(最多只允许输入30个字)