Android基础第十一天易忘部分

样式和主题的区别:
作用范围不同
1.样式都是作用在某个组件上,而Theme作用在某个Activity或整个应用程序上
2.样式是在布局文件里配置,主题是在清单文件里配置,例如app的夜间模式和白天模式的切换就是用的主题



杀进程:

/**
 * 杀死自己进程和别人进程的演示
 * 1.自杀不能杀别人
 * 2.杀别人不能杀自己,只能杀死空进程和后台进程,系统进程杀不了(杀别人需要家权限)
 */
public class MainActivity extends Activity {

    private TextView et_progressName;
    private ActivityManager am;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        et_progressName = (TextView) findViewById(R.id.et_progressName);
        am = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
    }

    public void killmy(View view) {
        finish();                                                               //关闭当前Activity
        android.os.Process.killProcess(android.os.Process.myPid());             //杀死自己的进程(真正的关闭),但是就算参数写别的进程号也没有效果
    }

    public void killother(View view) {
        String progressName = et_progressName.getText().toString();
        if(!TextUtils.isEmpty(progressName)){
            am.killBackgroundProcesses(progressName);
        }
    }

    /**
     * 返回按键方法覆写
     */
    @Override
    public void onBackPressed() {
        //super.onBackPressed();//这样就不会执行系统本身的关闭程序,因为系统的返回并没有把进程也杀死
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("是否要关闭程序");
        builder.setNegativeButton("取消", null);                                //点击事件为null和点击事件里没有任何实现代码都表示点击取消后会关闭AlertDialog
        builder.setPositiveButton("确定",new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                finish();//关闭当前Activity
                android.os.Process.killProcess(android.os.Process.myPid());     //杀死自己的进程(真正的关闭),但是就算参数写别的进程号也没有效果
                //System.exit(0);                                               //结束虚拟机,不推荐
            }
        });
        builder.show();
    }
}


你可能感兴趣的:(Android)