Android 工作笔记

1、如何使在横竖屏切换时Acivity不重新创建

需要在AndroidManifest.xml中对需要设置该属性的Activity加入

android:configChanges="orientation|keyboardHidden|screenSize"

在4.0以后都需要加上screenSize属性否则不起效果,但是如果切换系统语言,Acivity仍然会重新创建。

2、如何让应用不出现在最近任务列表(Recent List)里面

需要在AndroidManifest.xml中application或者activity内添加

android:excludeFromRecents="true"

3、如何监听对话框的消失事件

        AlertDialog.Builder builder = new AlertDialog.Builder(this)
                .setMessage("MY NAME IS JIANWEI").setTitle("NOTE")
                .setPositiveButton("OK", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                    }
                })
                .setNegativeButton("CANCLE", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.cancel();
                    }
                });
        builder.setOnDismissListener(new DialogInterface.OnDismissListener() {
            @Override
            public void onDismiss(DialogInterface dialog) {
                Log.d("OOO", "onDismiss");
            }
        });
        builder.setOnCancelListener(new DialogInterface.OnCancelListener() {
            @Override
            public void onCancel(DialogInterface dialog) {
                Log.d("OOO", "onCancel");
            }
        });
        builder.create().show();

注册setOnDismissListener监听器,用户使用back键或者调用dialog.dismiss()和dialog.cancel()都会响应,注册setOnCancelListener的话只会响应dialog.cancel(),

注意setOnDismissListener的方法一定要写在builder.create().show()前,否则将不会回调,同时也不会报任何错误。

4、监听系统功能的启动和关闭状态,例如:飞行模式

        String SAVE_NAME = Settings.Global.AIRPLANE_MODE_ON;
        getContentResolver().registerContentObserver(Settings.System.getUriFor(SAVE_NAME), true, new ContentObserver(new Handler()) {
            @Override
            public void onChange(boolean selfChange) {
                super.onChange(selfChange);
                Log.d("OOO", "data was changed,do someting now");
            }
        });

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值