最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android Fragment中使用SurfaceView切換時(shí)閃一下黑屏的解決辦法

 更新時(shí)間:2015年09月25日 09:57:55   投稿:mrr  
本篇文章主要給大家分享Android Fragment中使用SurfaceView切換時(shí)閃一下黑屏的解決辦法,需要的朋友可以參考下

重構(gòu)了下之前自己的一個(gè)新聞客戶端,全部使用了Fragment來進(jìn)行頁面切換,只有一個(gè)入口Activity作為程序的啟動Activity,其中有一個(gè)界面需要調(diào)用攝像頭識別二維碼,于是就會用到SurfaceView進(jìn)行預(yù)覽,那么問題來了,當(dāng)切換到對應(yīng)的Fragment時(shí),屏幕會黑一下,黑了1秒左右就顯示出正常的界面,而且這種現(xiàn)象只有第一次進(jìn)入該Fragment才會出現(xiàn),之后進(jìn)入都不會出現(xiàn),解決方法是無意在github上看到了,試了一下,可以行的通,下面貼出解決方法。

方法一、在Activity的onCreate中添加如下代碼

復(fù)制代碼 代碼如下:

getWindow().setFormat(PixelFormat.TRANSLUCENT); 

但是如果你在fragment里這么做貌似是行不通的。

方法二、在activity 的 root view 里面 加入一個(gè) 長寬都是0px的并且不可見SurfaceView元素 。

原因:

SurfaceView因?yàn)椴煌谝话愕膙iew,它有自己良好的緩沖以及數(shù)據(jù)存取機(jī)制,系統(tǒng)對他有特殊處理。當(dāng)surfaceview第一次在當(dāng)前activity上添加的時(shí)候,系統(tǒng)會給WindowManager重新排布局,relayout,這樣就會黑一下,這個(gè)只會出現(xiàn)在第一次,以后再添加surfaceview時(shí)就不會黑屏了。

而自己項(xiàng)目中,由于全部使用fragment進(jìn)行切換頁面,只有一個(gè)activity聲明在清單文件中,但是代碼中是可以配置是否新開activity作為fragment容器的,由于我不想再這個(gè)activity中增加代碼getWindow().setFormat(PixelFormat.TRANSLUCENT);,于是我使用了新開activity作為這個(gè)fragment的容器,于是問題也得以解決。

有閃屏的代碼是這樣的

private static final int REQUEST_CODE_SCAN = 1;
openPageForResult("scan",null,CoreAnim.slide,REQUEST_CODE_SCAN);

但是這個(gè)函數(shù)有一個(gè)重載函數(shù)就是是否新開activity,這里使用重載函數(shù)進(jìn)行解決

private static final int REQUEST_CODE_SCAN = 1;
openPageForResult(true,"scan",null,CoreAnim.slide,REQUEST_CODE_SCAN);

函數(shù)原型

 /**
   * 打開fragment并請求獲得返回值,并設(shè)置是否在新activity中打開
   * @param newActivity 是否新開activity
   * @param pageName 頁面名
   * @param bundle 參數(shù)
   * @param coreAnim 動畫
   * @param requestCode 請求碼
   * @return 打開的fragment對象
   */
  public final Fragment openPageForResult(boolean newActivity, String pageName, Bundle bundle, CoreAnim coreAnim, int requestCode);

以上內(nèi)容就是本文給大家分享的Android Fragment中使用SurfaceView切換時(shí)閃一下黑屏的解決辦法,希望對大家有所幫助。

相關(guān)文章

  • Flutter進(jìn)階之實(shí)現(xiàn)動畫效果(十)

    Flutter進(jìn)階之實(shí)現(xiàn)動畫效果(十)

    這篇文章主要為大家詳細(xì)介紹了Flutter進(jìn)階之實(shí)現(xiàn)動畫效果的第十篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • Android 定位系統(tǒng)(GPS)開發(fā)詳解

    Android 定位系統(tǒng)(GPS)開發(fā)詳解

    GPS定位是智能手機(jī)上一個(gè)比較有意思的功能,LBS等服務(wù)都有效的利用了GPS定位功能,本文就跟大家分享下Android開發(fā)中的GPS定位知識
    2016-07-07
  • Android Broadcast原理分析之registerReceiver詳解

    Android Broadcast原理分析之registerReceiver詳解

    這篇文章主要介紹了Android Broadcast原理分析之registerReceiver詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Android進(jìn)階CoordinatorLayout協(xié)調(diào)者布局實(shí)現(xiàn)吸頂效果

    Android進(jìn)階CoordinatorLayout協(xié)調(diào)者布局實(shí)現(xiàn)吸頂效果

    這篇文章主要為大家介紹了Android進(jìn)階CoordinatorLayout協(xié)調(diào)者布局實(shí)現(xiàn)吸頂效果,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • Native層消息機(jī)制深入探究實(shí)例解析

    Native層消息機(jī)制深入探究實(shí)例解析

    這篇文章主要為大家介紹了Native層消息機(jī)制的深入探究及實(shí)例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • Android仿微信圖片選擇器

    Android仿微信圖片選擇器

    這篇文章主要為大家詳細(xì)介紹了Android仿微信圖片選擇器的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • Android自定義View實(shí)現(xiàn)開關(guān)按鈕

    Android自定義View實(shí)現(xiàn)開關(guān)按鈕

    android 自定義view知識非常廣泛,難以讓人掌握。但是也是andoroid進(jìn)階學(xué)習(xí)的必經(jīng)之路。下面通過本文給大家介紹Android自定義View實(shí)現(xiàn)開關(guān)按鈕的知識,非常不錯(cuò),感興趣的朋友一起看看吧
    2016-11-11
  • 淺談Android Studio 解析XML的三種方法

    淺談Android Studio 解析XML的三種方法

    這篇文章主要介紹了淺談Android Studio 解析XML的三種方法,Android Studio 解析XML常見的三種方式:DOM PULL SAX,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2018-07-07
  • Android自定義View實(shí)現(xiàn)垂直時(shí)間軸布局

    Android自定義View實(shí)現(xiàn)垂直時(shí)間軸布局

    這篇文章主要為大家詳細(xì)介紹了Android自定義View實(shí)現(xiàn)垂直時(shí)間軸布局的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • Android WebView如何判定網(wǎng)頁加載的錯(cuò)誤

    Android WebView如何判定網(wǎng)頁加載的錯(cuò)誤

    這篇文章主要介紹了Android WebView如何判定網(wǎng)頁加載的錯(cuò)誤,幫助大家更好的理解和學(xué)習(xí)使用Android,感興趣的朋友可以了解下
    2021-04-04

最新評論

土默特左旗| 塘沽区| 高陵县| 新河县| 桂阳县| 定结县| 手游| 涟水县| 德钦县| 容城县| 鄂伦春自治旗| 沅江市| 龙州县| 双牌县| 永福县| 偃师市| 龙门县| 金寨县| 大宁县| 鄯善县| 隆林| 古交市| 庆阳市| 灌阳县| 东平县| 宁国市| 车险| 扶绥县| 鸡西市| 平昌县| 景德镇市| 锡林郭勒盟| 板桥市| 郸城县| 读书| 湘潭市| 江源县| 华阴市| 清水河县| 营山县| 安泽县|