转载

Android 关于finish()、onDestory()、System.exit(0)、onCheckedChanged(RadioGroup arg0, int check...

一、重写父类finish();函数。

    @Override     public void finish() {                 //其他结束之前的操作,这里写的手机"back"键都有效                                   //使用关键字super调用父类的finish()函数         super.finish();                 //结束动画         overridePendingTransition(R.anim.push_left_0, R.anim.push_left_1);     }

这样写的好处如果使用了finish()函数,手机"back"键都有效。如果要保存一些重要的值,或者判断都可以复写这个finish()函数。finish函数仅仅把当前Activity退出了,但是并没有释放他的资源。安卓系统自己决定何时从内存中释放应用程序。当系统没有可用内存到时候,会按照优先级,释放部分应用。

二、Activity.onDestory()

系统销毁了这个Activity的实例在内存中占据的空间。

在Activity的生命周期中,onDestory()方法是他生命的最后一步,资源空间等就被回收了。当重新进入此Activity的时候,必须重新创建,执行onCreate()方法。

三、System.exit(0)这个是退出整个应用程序的,是针对整个Application的。将整个程序进程直接关闭退出。

四、onCheckedChanged(RadioGroup arg0, int checkId);

    @Override     // RadioGroup监听     public void onCheckedChanged(RadioGroup arg0, int checkId) {         arg0.check(checkId);         }

这是一个RadioGroup控件监听实现的接口。但是如果有需要使用这个函数,也可以灵活应用。

1、调用onCheckedChanged(RadioGroup arg0, int checkId);

函数时,需要查找RadioGroup的id,以及查找RadioButton的id。这些值赋值进去。

示例:

RadioGroup radioGroup = (RadioGroup) findViewById(R.id.radioGroup); RadioButton radio = (RadioButton) findViewById(R.id.radio); onCheckedChanged(radioGroup, radio);

2、arg0.check(checkId);

这个作用就是自动帮你选择RadioButton。只要把RadioGroup、RadioButton的id传进去,实现什么都可以了。

五、附带常用textview查找id绑定控件并显示text快捷方法

public void setTextViewIdAndShowText(int nRid, String showText){     try {          TextView txtTextView = (TextView) findViewById(Rid);           if (txtTextView != null) txtTextView.setText(txt == null ? "" : txt);          } catch (ClassCastException fe) {          } }

正文到此结束
Loading...