美文网首页
自学Android第五天——活动的一些小技巧

自学Android第五天——活动的一些小技巧

作者: GoldenR | 来源:发表于2019-04-14 21:42 被阅读0次

知晓当前是在哪一个活动

找到 项目名称——>app——>src——>main——>java——>包,右键new——>java class。我们命名为BaseActivity。内容如下:

public class BaseActivityextends AppCompatActivity {

@Override

    protected void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);

        Log.d("BaseActivity",getClass().getSimpleName());

    }

@Override

    protected void onDestroy(){

super.onDestroy();

        ActivityCollector.removeActivity(this);

    }

}

随时随地退出程序

创建和上面一样的方法。名字命名为ActivityCollector,内容如下:

public class ActivityCollector {

public static Listactivities=new ArrayList<>();

    public static void addActivity(Activity activity){

activities.add(activity);

    }

public static void removeActivity(Activity activity){

activities.remove(activity);

    }

public static void finishAll(){

for(Activity activity:activities){

if(!activity.isFinishing()){

activity.finish();

            }

}

activities.clear();

    }

}

把下面的代码添加到你要实现退出程序功能的活动中,例如我们在第三个活动添加该功能,代码如下:

public class ThirdActivityextends AppCompatActivity {

@Override

    protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_third);

        Button but_3=(Button)findViewById(R.id.but_3);

        //退出程序

        but_3.setOnClickListener(new View.OnClickListener() {

@Override

            public void onClick(View v) {

                ActivityCollector.finishAll();

                //杀死当前进程

                //android.os.Process.killProcess(android.os.Process.myPid());

            }

        });

    }

你可以选择在销毁所有活动的代码后面再加上杀掉当前进程的代码,以保证程序完全退出,杀掉进程的代码在代码前加了注释的。

启动活动的最佳写法

前面见过用Intent进行跳转,这样没问题。但是在真正的项目开发中经常会有对接的问题出现。这时我们换一种写法,就可以解决这种窘境。

例如我们修改SecondActivity中的代码,如下所示:

public class SecondActivityextends BaseActivity {

    //启动活动(最佳方法)

    public static void actionStart(Context context,String data1,String data2){

        Intent intent=new Intent(context,SecondActivity.class);

        intent.putExtra("param1",data1);

        intent.putExtra("param2",data2);

        context.startActivity(intent);

    }

//其他的方法用点表示

。。。

}

现在我们只需要在FirstActivity中的onClick() 方法里添加SecondActivity.actionStart(FirstActivity.this,"data1","data1");这样一目了然,你可以清晰地知道启动SecondActivity需要传递哪些数据。

相关文章

  • 自学Android第五天——活动的一些小技巧

    知晓当前是在哪一个活动 找到 项目名称——>app——>src——>main——>java——>包,右键new——...

  • 自学日语的一些小技巧

    从小就喜欢看日本动漫,基本上出的新番抽空都不会落下看。然后之前的菊地凛子,到现在的新垣结衣.....这些都可以归之...

  • Android 一些小技巧

    Android Button 文字默认变为大写 取消LongClick长按后的反馈 解决webview在滑动时或动...

  • android 自学必备网站

    一,Android 自学网站 给 Android 自学者朋友推荐几个自学网站: 1. Android Develo...

  • sql小知识

    自学习mysql并用之于工作,已有一年之久。遇到的一些小问题,学到的一些小技巧,根据成功使用的语句,整合成小文档,...

  • Android布局优化

    本文主要记录Android布局优化的一些小技巧Android中,如果一个View树的高度太高,就会严重影响测量,布...

  • Android Studio一些小技巧

    2.1.Android Studio检测不到模拟器当你打开模拟器,过段时间又想用真机测试的时候 Studio可能检...

  • Android 开发一些小技巧

    1.动态获取View 的id String imgName = "scenic_image" + (i + 1);...

  • Android中的一些小技巧

    Android Studio设置相关 1、Android Studio避免使用String类型变量的get()方法...

  • Android Studio的一些小技巧

    APK瘦身 在Android Studio中我们可以开启混淆,和自动删除没有Resources文件,来达到给APP...

网友评论

      本文标题:自学Android第五天——活动的一些小技巧

      本文链接:https://www.haomeiwen.com/subject/debswqtx.html