android:configChanges属性
Posted xgbing
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android:configChanges属性相关的知识,希望对你有一定的参考价值。
设置Activity的android:configChanges时,切屏会重新调用各个生命周期
本人实际测试发现设置
android:configChanges="keyboardHidden|orientation"或不设置横竖屏切换时也会执行onCreate各一次,并且不会执行onConfigurationChanged
设置
android:configChanges="orientation|screenSize"
不会执行onCreate,会执行onConfigurationChanged。
测试代码:
public class MainActivity extends Activity { TextView lbl; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); lbl = (TextView)findViewById(R.id.label); Log.d("123", "onCreate"); } @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); if(newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE){ lbl.setText("横屏"); } else{ lbl.setText("竖屏"); } } }
<activity android:name=".MainActivity" android:label="@string/app_name" android:configChanges="orientation|screenSize"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
以上是关于android:configChanges属性的主要内容,如果未能解决你的问题,请参考以下文章
android开发怎样让悬浮Activity只是隐藏而不销毁