一、隐藏Activity标题:
requestWindowFeature(Window.FEATURE_NO_TITILE);//要在setContentView()之前调用
二、向下一个活动传递数据(在要启动的Activity中提供一个方法给上一个Activity调用)
启动Activity的最佳写法:
public class SecondActivity extends BaseActivity {
public static void actionStart(Context context, String data1, String data2) {
Intent intent = new Intent(context, SecondActivity.class);
intent.putExtra(data1);
intent.putExtra(data2);
context.startActivity(intent);
}
}
三、返回数据给上一个Activity
(1)、调用startActivityForResult(intent,requestcode);
(2)、在第二个Activity中,
Intent intent = new Intent();
intent.putExtra("data","ss");
setResut(resultcode,intent);
(3)、重写onActivityResult方法
四、Activity被回收了怎么办?
重写Activity的onSaveInstanceState(Bundle outState)方法,
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); if (savedInstanceState != null) { //取出保存的数据 } } @Override public void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState) { super.onSaveInstanceState(outState, outPersistentState); outState.putString("data","data"); }五、随时随地退出程序
/** * 基础Activity,所有Activity继承这个Activity * Created by Administrator on 2016/7/14. */ public class BaseActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.d("BaseActivity", getClass().getSimpleName());//知晓当前是在哪一个活动 ActivityCollector.addActivity(this); } @Override protected void onDestroy() { super.onDestroy(); ActivityCollector.removeActivity(this); } }
/** * Activity管理 * Created by Administrator on 2016/7/14. */ public class ActivityCollector { public static List<Activity> activities = 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(); } } } }
六、设置全屏