国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android強制設定橫屏時,SurfaceView一直黑屏

2019-12-12 04:08:59
字體:
來源:轉載
供稿:網友

接著上一個問題,解決了SurfaceView閃屏問題之后(//m.survivalescaperooms.com/article/101909.htm),又有了一個新的問題。現在我想設置含有fragment+viewpager的activity橫屏。其中一個fragment有視頻播放功能,含SurfaceView.

當我橫屏拿著平板時,打開程序進入到該activity,是正常的。當豎屏拿著打開程序進入到該activity時,就會一直處于黑屏的狀態。原因應該還是SurfaceView。難道程序轉入后臺或者黑屏以后(只要是不繪制狀態),屏幕方向就是系統默認的屏幕方向嗎?

解決:

1.在AndroidManifest.xml的對應的activty中,設置android:screenOrientation="nosensor",即 忽略物理感應器,這樣就不會隨著用戶旋轉設備而更改了 ( "unspecified"設置除外 )

設置android:configChanges="orientation|keyboardHidden|keyboard",橫豎屏切換時,不會重新加載頁面。

2.在對應的Activity中設置橫屏。setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

相關詳解:關于Android設置全屏和橫屏

橫屏設置

XML文件設置--portrait為縱向,landscape為橫向

android:screenOrientation=["unspecified" | "user" | "behind" |"landscape" | "portrait" | "sensor" | "nonsensor"]

screenOrientation 用來指定Activity的在設備上顯示的方向,每個值代表如下含義:

"unspecified"     默認值 由系統來判斷顯示方向.判定的策略是和設備相關的,所以不同的設備會有不同的顯示方向.

"landscape"     橫屏顯示(寬比高要長)

"portrait"     豎屏顯示(高比寬要長)

"user"     用戶當前首選的方向

"behind"     和該Activity下面的那個Activity的方向一致(在Activity堆棧中的)

"sensor"     有物理的感應器來決定。如果用戶旋轉設備這屏幕會橫豎屏切換。

"nosensor"     忽略物理感應器,這樣就不會隨著用戶旋轉設備而更改了 ( "unspecified"設置除外 )。

代碼設置

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

全屏兩種方法:

方法一:java代碼

public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);               //設置無標題        requestWindowFeature(Window.FEATURE_NO_TITLE);         //設置全屏        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);               setContentView(R.layout.main);   }

方法二:xml布局

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"   package="com.andyidea"   android:versionCode="1"   android:versionName="1.0" >   <uses-sdk android:minSdkVersion="8" />   <application     android:icon="@drawable/icon"     android:label="@string/app_name" >     <activity       android:name=".login.LoginActivity"       android:label="@string/app_name" android:theme="@android:style/android.NoTitleBar.Fullscreen" >       <intent-filter>         <action android:name="android.intent.action.MAIN" />         <category android:name="android.intent.category.LAUNCHER" />       </intent-filter>     </activity>   </application> </manifest>

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持武林網!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 昂仁县| 泸定县| 汤原县| 辽中县| 巴林右旗| 岚皋县| 阿拉善盟| 芒康县| 彩票| 赤水市| 东丽区| 沂源县| 大城县| 德钦县| 镇宁| 澎湖县| 金门县| 方正县| 七台河市| 合肥市| 苏州市| 西华县| 铜川市| 孟连| 卫辉市| 乌鲁木齐县| 资源县| 达日县| 霍山县| 丹寨县| 辽中县| 阳新县| 滨海县| 内乡县| 屯昌县| 孟津县| 阿巴嘎旗| 聂拉木县| 石屏县| 德化县| 裕民县|