Activity(三)

透明主題從一個activity A跳轉(zhuǎn)到另外一個activity B:

A:onPause()

注意不會調(diào)用onStop()方法,因此activity B finish()之后activity A不會調(diào)用onRestart()方法。

從activity B返回activity A

A:onResume()

設(shè)置activity主題透明:

示例代碼如下

<stylename="AppTheme" parent="AppBaseTheme">

? <item name="android:windowIsTranslucent">true</item>

</style>

<stylename="ThemeActivity" parent="@android:style/Theme.Light.NoTitleBar">

? <item name="android:windowIsTranslucent">true</item>

</style>

<stylename="WXTheme" parent="AppBaseTheme">

? <item name="android:windowIsTranslucent">true</item>

? <item name="android:windowNoTitle">true</item>

? <item name="android:windowBackground">@android:color/transparent</item>

</style>

解決方法:

activity跳轉(zhuǎn)返回修改狀態(tài)可使用onActivityResult()方法。Activity全屏設(shè)置

方式1:AndroidManifest.xml

<activity android:name="MainActivity"? android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />

方式2:代碼實現(xiàn)

requestWindowFeature(Window.FEATURE_NO_TITLE);? // 隱藏標題欄

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);? // 隱藏狀態(tài)欄

注意:設(shè)置全屏的代碼必須在setContentView(R.layout.main) 之前,不然會報錯。

Activity橫豎屏設(shè)置

方式1:AndroidManifest.xml

<activity android:name="MainActivity"? android:screenOrientation="landscape" />? // 或者 “portrait”

方式2:代碼實現(xiàn)

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

獲取橫屏方向

int orientation = this.getResources().getConfiguration().orientation;

orientation 的常用取值可以為 ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE(橫屏) 或 ActivityInfo.SCREEN_ORIENTATION_PORTRAIT(豎屏)

Activity屏幕一直顯示

1、AndroidManifest.xml添加權(quán)限

<uses-permission android:name="android.permission.WAKE_LOCK" />

2、代碼實現(xiàn)

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Activity啟動過程

可將其分為6個過程

1、使用代理模式啟動到ActivityManagerService中執(zhí)行。

2、創(chuàng)建ActivityRecord到mHistory記錄中。

3、通過socket通信到Zygote相關(guān)類創(chuàng)建process。

4、通過ApplicaitonThread與ActivityManagerService建立通信。

5、ActivityManagerService通知ActivityThread啟動Activity的創(chuàng)建。

6、ActivityThread創(chuàng)建Activity加入到mActivities中并開始調(diào)度Activity執(zhí)行。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容