رفتن به مطلب

آموزش مخفی کردن navigation bar و full screen کردن صفحه نمایش


fazly

ارسال‌های توصیه شده

سلام

خب بعضی موقع ها تو برنامه هامون نیاز داریم که صفحه نمایشو full screen کنیم حتی اون نوار پایینی گوشی (navigation bar)

برای این کار خود گوگل گفته به این شکل عمل کنیم : 

 

که در واقع کد جاواش به این شکله:

View decorView = getWindow().getDecorView();
// Hide both the navigation bar and the status bar.
// SYSTEM_UI_FLAG_FULLSCREEN is only available on Android 4.1 and higher, but as
// a general rule, you should design your app to hide the status bar whenever you
// hide the navigation bar.
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
              | View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);

 

حالا ما میخوایم با استفاده از قابلیت inline java از اون تو بیسیک استفاده کنیم .

برای این کار اول میایم کتابخونه ی JavaObject رو به پروژه مون اضافه میکنیم و به این شکل تعریفش میکنیم:

Sub Process_Globals
Private job As JavaObject
End Sub 

و سپس این کد رو  به این شکل مینویسیم:

#If JAVA
import android.view.View;

public void navhided(){
        View decorView = getWindow().getDecorView();
        int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN;
        decorView.setSystemUiVisibility(uiOptions);
    }
#End If 

حالا میتونیم هرجایی که خواستیم مثلا داخل رویداد کلیک یک باتن از این کد استفاده کنیم :

job.InitializeContext
job.RunMethod("navhided",Null) 

حالا صفحه نمایش به حالت full screen در میاد و با لمس صغحه توسط کاربر دوباره به حالت قبلی برمیگرده

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام 

این ارور رو چیکار کنم!؟

src\b4a\example\runpage.java:380: error: cannot find symbol
            int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN;
                                                                      ^
  symbol:   variable SYSTEM_UI_FLAG_FULLSCREEN
لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

سلام 

این ارور رو چیکار کنم!؟

src\b4a\example\runpage.java:380: error: cannot find symbol
            int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN;
                                                                      ^
  symbol:   variable SYSTEM_UI_FLAG_FULLSCREEN

 

 

 

tools > configure paths > android.jar 

api 19  یا بلاتر بهش بدید درست میشه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

راه حل بهتر :

 

تیک کتابخونه جاوا آبجکت رو بزنید و هر جا که خواستید این کد رو بنویسید خودش محو میشه :


Dim jo As JavaObject = Activity
jo.RunMethod("setSystemUiVisibility", Array As Object(3846)) '3846 - non-stick
لینک ارسال
به اشتراک گذاری در سایت های دیگر

آیا راهی هست که بعد از مخفی کردن NAVIGATION با لمس برنگرده؟

بلکه فقط با یک باتوم خاص برگرده

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بوسیله تایمر میتونید همیشه مخفیش کنید با تو رویداد تاپ اکتیویتی کدش رو اضاف کنید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...