2015-06-19 24 views
1

我有一個活動和幾個片段。對於只有一個片段,我想禁用截圖功能。在onCreate函數中,我爲窗口設置了標誌,但是我發現這不起作用。也許系統需要重新加載窗口。所以我嘗試刪除當前窗口,然後將其添加回來。這確實有用,但我發現屏幕會變黑一秒鐘。我該如何解決這個屏幕閃光問題?這是片段的onCreate。我無法在Activity中設置標誌,因爲這將禁用所有片段的屏幕截圖。Android屏幕flash當removeView

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { 
     getActivity().getWindow().setFlags(LayoutParams.FLAG_SECURE, LayoutParams.FLAG_SECURE); 
     Window window = getActivity().getWindow(); 
     WindowManager wm = getActivity().getWindowManager(); 
     wm.removeViewImmediate(window.getDecorView()); 
     wm.addView(window.getDecorView(), window.getAttributes()); 

    } 
} 

回答

0

我相信你是正確的,你需要在活動的setContentView(...)之前設置該標誌,否則一兩件事你可以嘗試是設置FLAG_SECURE

後使用 getActivity().recreate()