トラッキング コード

2/21/2012

Request that the visibility of the SystemBar be changed. For Tablet UI Mode of ICS

Tablet device has Systembar, which resides at the bottom of the screen to provide system navigation controls (Home, Back, and so forth).

If you would like to know NavigationBar for Phone device, Please read my post,
Request that the visibility of the NavigationBar be changed. For Phone UI Mode of ICS.

How to Request that the visibility of the SystemBar for Tablet

To request that the visibility of the SystemBar be changed, you can use View#setSystemUiVisibility().

  1. register Listener to View - View#setOnSystemUiVisibilityChangeListener
  2. set Visivility mode - View#setSystemUiVisibility

Visivility mode:
  • View.SYSTEM_UI_FLAG_LOW_PROFILE  - navigation icons may dim 

View.SYSTEM_UI_FLAG_HIDE_NAVIGATION is not used for Tablet.
Please read Android Developers Page.
http://developer.android.com/intl/ja/sdk/android-4.0.html "Controls for system UI visibility"

Example:


{
                   :
 View view;
 view = findViewById(R.id.linerLayout);
         view.setOnSystemUiVisibilityChangeListener(mOnSystemUiVisibilityChangeListener);
 view.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE);
                   :
}

private OnSystemUiVisibilityChangeListener mOnSystemUiVisibilityChangeListener = new OnSystemUiVisibilityChangeListener(){

 @Override
 public void onSystemUiVisibilityChange(int visibility) {
  Log.e("","call onSystemUiVisibilityChange = " + visibility);
 }
};


View.SYSTEM_UI_FLAG_LOW_PROFILE
SystemBar display area of ​​the intact, but appear dimmed.



If you want to know more process in Android Frameworks, check it!!
You can notice that TabletStatusBar do not has a NavigationBarView.

\frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\tablet
- TabletStatusBar.java

\frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\tablet
- PhoneStatusBar.java
- NavigationBarView.java

No comments:

Post a Comment