Tuesday 15 June 2010

How to make action bar in android full screen activity always visible -



How to make action bar in android full screen activity always visible -

i making app have total screen activity. action bar in total screen activity auto hiding default. want create action bar visible. tried toggling variables auto_hide, etc. of no use.

package com.bhargav.profiletimer; import com.bhargav.profiletimer.util.systemuihider; import android.annotation.targetapi; import android.app.activity; import android.content.intent; import android.os.build; import android.os.bundle; import android.os.handler; import android.view.motionevent; import android.view.view; /** * illustration full-screen activity shows , hides scheme ui (i.e. * status bar , navigation/system bar) user interaction. * * @see systemuihider */ public class timerslist extends activity { /** * whether or not scheme ui should auto-hidden after * {@link #auto_hide_delay_millis} milliseconds. */ private static final boolean auto_hide = true; /** * if {@link #auto_hide} set, number of milliseconds wait after * user interaction before hiding scheme ui. */ private static final int auto_hide_delay_millis = 3000; /** * if set, toggle scheme ui visibility upon interaction. otherwise, * show scheme ui visibility upon interaction. */ private static final boolean toggle_on_click = true; /** * flags pass {@link systemuihider#getinstance}. */ private static final int hider_flags = systemuihider.flag_hide_navigation; /** * instance of {@link systemuihider} activity. */ private systemuihider msystemuihider; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_timers_list); final view controlsview = findviewbyid(r.id.fullscreen_content_controls); final view contentview = findviewbyid(r.id.fullscreen_content); // set instance of systemuihider command scheme ui // activity. msystemuihider = systemuihider.getinstance(this, contentview, hider_flags); msystemuihider.setup(); msystemuihider .setonvisibilitychangelistener(new systemuihider.onvisibilitychangelistener() { // cached values. int mcontrolsheight; int mshortanimtime; @override @targetapi(build.version_codes.honeycomb_mr2) public void onvisibilitychange(boolean visible) { if (build.version.sdk_int >= build.version_codes.honeycomb_mr2) { // if viewpropertyanimator api available // (honeycomb mr2 , later), utilize animate // in-layout ui controls @ bottom of // screen. if (mcontrolsheight == 0) { mcontrolsheight = controlsview.getheight(); } if (mshortanimtime == 0) { mshortanimtime = getresources().getinteger( android.r.integer.config_shortanimtime); } controlsview.animate() .translationy(visible ? 0 : mcontrolsheight) .setduration(mshortanimtime); } else { // if viewpropertyanimator apis aren't // available, show or hide in-layout ui // controls. controlsview.setvisibility(visible ? view.visible : view.gone); } if (visible && auto_hide) { // schedule hide(). delayedhide(auto_hide_delay_millis); } } }); // set user interaction manually show or hide scheme ui. contentview.setonclicklistener(new view.onclicklistener() { @override public void onclick(view view) { if (toggle_on_click) { msystemuihider.toggle(); } else { msystemuihider.show(); } } }); // upon interacting ui controls, delay scheduled hide() // operations prevent jarring behavior of controls going away // while interacting ui. findviewbyid(r.id.button1).setontouchlistener(mdelayhidetouchlistener); } @override protected void onpostcreate(bundle savedinstancestate) { super.onpostcreate(savedinstancestate); // trigger initial hide() shortly after activity has been // created, briefly hint user ui controls // available. delayedhide(100); } /** * touch listener utilize in-layout ui controls delay hiding * scheme ui. prevent jarring behavior of controls going away * while interacting activity ui. */ view.ontouchlistener mdelayhidetouchlistener = new view.ontouchlistener() { @override public boolean ontouch(view view, motionevent motionevent) { if (auto_hide) { delayedhide(auto_hide_delay_millis); } homecoming false; } }; handler mhidehandler = new handler(); runnable mhiderunnable = new runnable() { @override public void run() { msystemuihider.hide(); } }; /** * schedules phone call hide() in [delay] milliseconds, canceling * scheduled calls. */ private void delayedhide(int delaymillis) { mhidehandler.removecallbacks(mhiderunnable); mhidehandler.postdelayed(mhiderunnable, delaymillis); } public void startaddwizard(view view) { intent intent = new intent(this, addwizard.class); startactivity(intent); } }

your code:

private static final int hider_flags = systemuihider.flag_hide_navigation;

what need:

private static final int hider_flags = systemuihider.flag_layout_in_screen_older_devices;

problem solved.

android android-layout android-activity

No comments:

Post a Comment