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

Android邪门歪道

时间:2015-08-17 12:21:01      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:

下面给几个邪门歪道的玩法,都是在实际项目中为了某些诡异需求而产生的。

1、强行关闭

作用:无论在何时何地都能关掉某个Activity

代码:

public class TestActivity extends Activity{
 
 private static TestActivity me = null;
 public static void close(){
  if (me!=null) {
   me.finish();
  }
 }
 
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  me = this;
 }
}

好处:简单、粗暴。不管你是在Adapter中,还是在其他Activity中,仅仅一句代码就可以关闭。(如果同个Activity打开多次,可以用数组解决)

弊端:静态Activity占用内存

2、毁尸灭迹

作用:临时处理一些诡异的跳转,比如A到B到C,在C按返回到A

代码:

  Intent intent = new Intent(this,MainActivity.class);
  startActivity(intent);
  finish();

好处:每次跳转都会干掉原先的Activity,想跳到哪个界面就重新startActivity一次。这样做的好处是不用花时间去想那些奇葩需求的跳转逻辑,反正我全都干掉,要显示哪个就跳哪个。

弊端:每次都要重新启动Activity,需要加载时间,建议只在部分特殊场景使用

3、观察者模式

作用:装B

代码:把所有Activity弄成观察者,被观察的对象是个单例工具类

好处:可以在任何地方调用一句工具类代码关闭或更新某个界面

弊端:实际上就是上面1的数组版本,静态Activity太多,这样不好不好

Android邪门歪道

标签:

原文地址:http://my.oschina.net/u/816576/blog/493421

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