我使用Mono開發了我的應用程序。我有最新版本4.0.3。我AndroidManifest.xml中規定:Honeycomb 3.1/Mono for Android堅持'LightsOut'
<uses-sdk android:targetSdkVersion="11" android:minSdkVersion="8" />
的應用在平板電腦上運行,因此在蜂窩我需要隱藏在屏幕底部的狀態欄。這是我怎麼做的(用一個簡單的擴展方法):
internal static void LightsOut(this View view)
{
try
{
IntPtr view_setSystemUiVisibility = JNIEnv.GetMethodID(view.Class.Handle, "setSystemUiVisibility", "(I)V");
JNIEnv.CallVoidMethod(view.Handle, view_setSystemUiVisibility, new JValue(1));
}
catch
{ }
}
我在我實例化的每個視圖上調用它。在我的摩托羅拉Xoom上運行3.0.1,這個工程很棒。
在我的三星Galaxy Tab運行3.1,它的工作;但狀態欄會在短時間內回來。在Android日誌中,我看到LightsOn()被調用...
如何防止狀態欄回到3.1?我看到這個事件:
http://developer.android.com/reference/android/view/View.OnSystemUiVisibilityChangeListener.html
,我想我可以用它來隱藏狀態欄,如果它回來。但我不明白我可以如何訂閱它(它不顯示在Intellisense中)。
謝謝。該應用只有一項活動,但視圖會定期顯示在前面。在3.1中這樣做會導致狀態欄重新顯示,顯然,按照您的鏈接。我在'BringToFront'後立即再次調用'LightsOut'並解決它。 – TheNextman 2012-02-28 14:04:41