显示隐藏Sherlock动作栏

时间:2013-06-13 06:54:00

标签: android actionbarsherlock

我已使用清单中的以下行向操作添加了Sherlock操作栏:

android:theme="@style/Theme.Sherlock.Light"

我希望保存屏幕空间并默认隐藏操作栏,并仅在用户点击屏幕时显示。我在Aldiko应用程序中看到过,但不知道如何实现它。

欢迎任何帮助。

2 个答案:

答案 0 :(得分:13)

隐藏在活动onCreate()方法

上的代码下方使用
getSupportActionBar().hide();

要在点击事件下显示代码,

getSupportActionBar().show();

关注ActionBarSherlock Usage了解详情。

答案 1 :(得分:1)

首先将id提供给活动布局(main_layout.xml)的包装节点:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
    android:id="@+id/containerMain"

其次在您的活动代码中实现此功能:

boolean isActionBarShow=true;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main_layout);

    a=getSupportActionBar();
    RelativeLayout rl= (RelativeLayout)findViewById(R.id.containerMain);
    rl.setOnTouchListener(new OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            if (event.getAction()==MotionEvent.ACTION_DOWN)
                if (isActionBarShow)
                {
                    a.hide();
                    isActionBarShow=false;                      
                }
                else
                {
                    a.show();
                    isActionBarShow=true;

                }
            return false;
        }
    });