Android強(qiáng)制設(shè)定橫屏?xí)r,SurfaceView一直黑屏
接著上一個(gè)問題,解決了SurfaceView閃屏問題之后(http://www.fzitv.net/article/101909.htm),又有了一個(gè)新的問題?,F(xiàn)在我想設(shè)置含有fragment+viewpager的activity橫屏。其中一個(gè)fragment有視頻播放功能,含SurfaceView.
當(dāng)我橫屏拿著平板時(shí),打開程序進(jìn)入到該activity,是正常的。當(dāng)豎屏拿著打開程序進(jìn)入到該activity時(shí),就會(huì)一直處于黑屏的狀態(tài)。原因應(yīng)該還是SurfaceView。難道程序轉(zhuǎn)入后臺(tái)或者黑屏以后(只要是不繪制狀態(tài)),屏幕方向就是系統(tǒng)默認(rèn)的屏幕方向嗎?
解決:
1.在AndroidManifest.xml的對(duì)應(yīng)的activty中,設(shè)置android:screenOrientation="nosensor",即 忽略物理感應(yīng)器,這樣就不會(huì)隨著用戶旋轉(zhuǎn)設(shè)備而更改了 ( "unspecified"設(shè)置除外 )
設(shè)置android:configChanges="orientation|keyboardHidden|keyboard",橫豎屏切換時(shí),不會(huì)重新加載頁(yè)面。
2.在對(duì)應(yīng)的Activity中設(shè)置橫屏。setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
相關(guān)詳解:關(guān)于Android設(shè)置全屏和橫屏
橫屏設(shè)置
XML文件設(shè)置--portrait為縱向,landscape為橫向
android:screenOrientation=["unspecified" | "user" | "behind" |"landscape" | "portrait" | "sensor" | "nonsensor"]
screenOrientation 用來指定Activity的在設(shè)備上顯示的方向,每個(gè)值代表如下含義:
"unspecified" 默認(rèn)值 由系統(tǒng)來判斷顯示方向.判定的策略是和設(shè)備相關(guān)的,所以不同的設(shè)備會(huì)有不同的顯示方向.
"landscape" 橫屏顯示(寬比高要長(zhǎng))
"portrait" 豎屏顯示(高比寬要長(zhǎng))
"user" 用戶當(dāng)前首選的方向
"behind" 和該Activity下面的那個(gè)Activity的方向一致(在Activity堆棧中的)
"sensor" 有物理的感應(yīng)器來決定。如果用戶旋轉(zhuǎn)設(shè)備這屏幕會(huì)橫豎屏切換。
"nosensor" 忽略物理感應(yīng)器,這樣就不會(huì)隨著用戶旋轉(zhuǎn)設(shè)備而更改了 ( "unspecified"設(shè)置除外 )。
代碼設(shè)置
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
全屏兩種方法:
方法一:java代碼
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//設(shè)置無標(biāo)題
requestWindowFeature(Window.FEATURE_NO_TITLE);
//設(shè)置全屏
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>
以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時(shí)也希望多多支持腳本之家!
- Android判斷屏幕是橫屏或是豎屏的簡(jiǎn)單實(shí)現(xiàn)方法
- 基于jQuery的判斷iPad、iPhone、Android是橫屏還是豎屏的代碼
- Android如何禁止橫屏豎屏的變換
- Android開發(fā)強(qiáng)制橫屏和強(qiáng)制豎屏設(shè)置實(shí)例代碼
- Android禁止橫屏豎屏切換的有效方法
- Android 4.4.2 橫屏應(yīng)用隱藏狀態(tài)欄和底部虛擬鍵的方法
- Android 5.0 開機(jī)橫屏修改方法
- android橫豎屏切換時(shí)候Activity的生命周期
- Android編程判斷橫屏、豎屏及設(shè)置橫豎屏的方法
相關(guān)文章
Android中RecyclerView實(shí)現(xiàn)橫向滑動(dòng)代碼
這篇文章主要介紹了Android中RecyclerView實(shí)現(xiàn)橫向滑動(dòng)代碼的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-07-07
Android調(diào)用密碼鎖屏校驗(yàn)的流程代碼詳解
這篇文章主要介紹了Android調(diào)用密碼鎖屏校驗(yàn)的流程代碼,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-08-08
Android中TabLayout添加小紅點(diǎn)的示例代碼
本篇文章主要介紹了Android中TabLayout添加小紅點(diǎn)的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-12-12
Matrix的set,pre,post調(diào)用順序詳解
下面小編就為大家?guī)硪黄狹atrix的set,pre,post調(diào)用順序詳解。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-04-04
Android啟動(dòng)優(yōu)化之延時(shí)加載的步驟詳解
這篇文章主要給大家介紹了關(guān)于Android啟動(dòng)優(yōu)化之延時(shí)加載的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-02-02
Android查看電池電量的方法(基于BroadcastReceiver)
這篇文章主要介紹了Android查看電池電量的方法,結(jié)合實(shí)例分析了Android使用BroadcastReceiver實(shí)現(xiàn)針對(duì)電池電量的查詢技巧,需要的朋友可以參考下2016-01-01
Android如何實(shí)現(xiàn)藍(lán)牙配對(duì)連接功能
Android 并沒有開放配對(duì)連接耳機(jī)的接口,而且網(wǎng)上大部分資料都是講解如何連接藍(lán)牙4.0的,很少有資料詳細(xì)介紹藍(lán)牙2.0相關(guān)的。期間還是踩了不少坑才摸索出解決辦法。所以把我自己摸索總結(jié)出來的經(jīng)驗(yàn)梳理記錄下,以便備份2021-05-05
詳解Android廣播Broadcast的啟動(dòng)流程
這篇文章主要為大家介紹了Android廣播Broadcast啟動(dòng)流程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03

