android:name属性值的前面加了一个点表示NewActivity时当前com.alvin.test下的类,如果类在应用的当前包下,可以省略点符号,如果在应用的子包下必须加点,如NewActivity类在com.alvin.test.user包下可以这样写:

<activity android:name=".user.NewAcitivity" />

 

  requestCode用于标识结果数据来自哪个Activity触发startActivityForResult(Intent intent, int resultCode);

  resultCode用于为结果数据定义唯一id

 

  Activity的onSaveInstanceState()和onRestoreInstanceState()并不是生命周期方法,它们并不一定会触发。当应用遇到意外情况(如:内存不足、用户直接按Home键)由系统销毁一个Activity时,onSaveInstanceState()会被调用(由运行状态进入暂停状态或由暂停状态进入停止状态)。

但是当用户主动去销毁一个Activity时,例如在应用中按返回键,onSaveInstanceState()就不会被调用。因为在这种情况下,用户的行为决定了不需要保存Activity的状态。

通常onSaveInstanceState()只适合用于保存一些临时性的状态,而onPause()适合用于数据的持久化保存

当屏幕的方向发生了改变,Activity会被销毁并且被重新创建,如果想在Activity被摧毁前缓冲一些数据,并且在Activity被重新创建后恢复缓冲的数据。可以重写Activity的onSaveInstanceState()和onRestoreInstanceState()方法。


  锁定Activity运行时的屏幕方向

<activity>节点的android:screenOrientation属性

android:screenOrientation="portrait"  //竖屏

android:screenOrientation="landscape"  //横屏

  全屏的Activity

//设置全屏模式

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

//去除标题栏

requestWindowFeature(Window.FEATURE_NO_TITLE);

  在Activity的Title中加入进度条

//不明确进度条

requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);

setContentView(R.layout.main);

setProgressBarIndeterminateVisibility(true);

//明确进度条

requestWindowFeature(Window.FEATURE_PROGRESS);

setContentView(R.layout.main);

setProgress(5000);

posted on 2012-03-25 15:57  Lee_Alvin  阅读(321)  评论(0编辑  收藏  举报