急急急!求解答android关于下方导航栏屏蔽的问题

kiss_大汉 发布于 2016/10/10 17:41
阅读 328
收藏 0

业务需求:

当打开APP的时候,屏蔽平板下方导航栏(可以去除下方导航栏,也可以屏蔽下方导航栏的功能),


(程序未运行时,下方导航栏清晰可见)

当退出APP的时候,显示平板下方导航栏。

在网上查找了很多,大部分是通过进入framework层修改,但我从来没接触过framework层,一脸懵逼。因此没法采用此方法(如果此方法是实现的唯一途径,可考虑)。

不过在网上终于找到了一种方法,可以去除下方的导航栏,但是当程序退出的时候,下方导航栏还是不可见的,求解决,如何让下方导航栏再次显示。下面是代码部分

private void hideActionBar(){


/*
* 隐藏运行Android 4.0以上系统的平板的屏幕下方的状态栏
*/
      try  
          {  
             String ProcID = "79";  
             if (android.os.Build.VERSION.SDK_INT >= 
             android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH) 
            ProcID = "42"; // ICS  
              // 需要root 权限  
              Process proc = Runtime.getRuntime().exec(new String[] { 
                                                         "su",

                                                          "-c", 

                                                           "service call activity "

                                                         + ProcID + " s16 com.android.systemui" }); // WAS  
       proc.waitFor();  
   }  
   catch (Exception ex)  
   {  
       Toast.makeText(getApplicationContext(), ex.getMessage(), Toast.LENGTH_LONG).show();  
   } 

    }

通过这种方法确实可以去除下方的导航栏,但是通过下面的显示方法,当程序退出的时候却仍然不显示导航栏


程序运行后,下方的导航栏已经消失



 private void showActionBar(){
   
    /*
* 显示运行Android 4.0以上系统的平板的屏幕下方的状态栏
*/
try  
   {  
       Process proc = Runtime.getRuntime().exec(new String[] { 
        "am", "startservice", "-n","com.android.systemui.SystemUIService" }); // WAS  
       proc.waitFor();  
   }  
   catch (Exception ex)  
   {  
       Toast.makeText(getApplicationContext(), ex.getMessage(), Toast.LENGTH_LONG).show();  
   } 

   
    }

我是在activity上添加了一个退出的button按钮,当点击button按钮后,先运行的showActionBar()方法,然后运行的exitsystem();

代码如下:

        exitButton = (Button)findViewById(R.id.btn_tuichu);

        exitButton.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {

        if("123456".equals(exitEditText.getText().toString().trim())){
                       showActionBar();
                       exitSystem();
             } else {
                       Toast.makeText(MainActivity.this, "密码错误,不能退出", 2000);
               }
                          }
                                    });


程序退出后,下方的导航栏还是消失的。

该怎么样才能让程序退出后,导航栏再次出现,急求大神帮忙!!!!

加载中
0
k
kiss_大汉
貌似没一个大神回复,,,,
返回顶部
顶部