这是在AndroidManifest中设置的,效果是监听各类致使Activity重绘的参数的变化。例如,当设置了android:configChanges="orientation|screenSize"
的时候,当横屏竖屏切换的时候,若是没有设置这个属性,Activity会重绘,若设置了,Activity不会重绘,而是会调用onConfigurationChanged
方法。java
<activity
android:name=".Activity.LoadingActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:screenOrientation="portrait"
android:theme="@style/FullscreenTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
复制代码
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
}
复制代码
指定Activity的屏幕方向android
<activity
android:name=".Activity.LoadingActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:screenOrientation="portrait"
android:theme="@style/FullscreenTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
复制代码
指定Activity的Style,或者是其余的,dialog也能够。bash
<activity
android:name=".Activity.LoadingActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:screenOrientation="portrait"
android:theme="@style/FullscreenTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
复制代码
<style name="DialogTransparent" parent="@android:style/Theme.Dialog">
<item name="windowBackground"> 窗体的背景 </item>
<item name="windowFrame">Dialog 是否有边框 </item>
<item name="android:windowAnimationStyle">@android:style/Animation.Activity</item>
<item name="windowNoTitle">窗体是否有标题</item>
<item name="windowFullscreen">false</item> #是否为全屏
<item name="windowShowWallpaper">false</item> #是否显示壁纸
<item name="windowTitleSize">25dip</item> # 窗体文字大小
<item name="windowCloseOnTouchOutside">false</item> #是否再点击外部可关闭
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
复制代码
属性说明:app
1.在 MainActivity 中调用:ide
startActivityForResult(new Intent(MainActivity.this,CaptureActivity.class),0x01);
复制代码
2.在 MainActivity 中重写 onActivityResult 方法动画
其中,resultCode 是以前约定的结果代号,data 为第二个页面传回来的数据。ui
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode==0x01) {
Log.e("---","jkfjlds");
}
super.onActivityResult(requestCode, resultCode, data);
}
复制代码
3.在第二个页面,使用:this
//这里的 intent 是返回的 Intent
//这里的 setResult 是设置返回结果的 Intent,其还带有,约定的结果代号。
Intent intent = new Intent();
intent.putExtra("result",result_p);
setResult(0x01,intent);
finish();
复制代码