Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/210.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 实施jeremy feinstein';s滑动菜单_Android_Android Sliding - Fatal编程技术网

Android 实施jeremy feinstein';s滑动菜单

Android 实施jeremy feinstein';s滑动菜单,android,android-sliding,Android,Android Sliding,我正在尝试使用Jeremy Feinstein的滑动菜单库开发一个应用程序。我所做的一切都是按照Github说明中描述的正确方式进行的。一切都很好,但问题是,当我点击操作栏主页按钮打开滑块时,它覆盖了整个屏幕。我希望它半开,就像在Facebook应用程序中的Facebook滑块一样。我的代码如下: public class MainActivity extends SlidingFragmentActivity { @Override public void onCreate(Bundle s

我正在尝试使用Jeremy Feinstein的滑动菜单库开发一个应用程序。我所做的一切都是按照Github说明中描述的正确方式进行的。一切都很好,但问题是,当我点击操作栏主页按钮打开滑块时,它覆盖了整个屏幕。我希望它半开,就像在Facebook应用程序中的Facebook滑块一样。我的代码如下:

public class MainActivity extends SlidingFragmentActivity {

@Override
public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);


    //Hide title bar
    getSupportActionBar().setDisplayShowTitleEnabled(true);

    //Enable home button
    getSupportActionBar().setHomeButtonEnabled(true);

    //Home as up display
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);

   // getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);


    setBehindContentView(R.layout.menu_frame);

    //SlidingMenu menu=getSlidingMenu();
    SlidingMenu menu=new SlidingMenu(this);
    //menu = new SlidingMenu(MainActivity.this);
    menu.setMode(SlidingMenu.LEFT);
    menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);
    setSlidingActionBarEnabled(true);
    menu.setShadowWidth(5);
    menu.setFadeDegree(0.0f);
    menu.attachToActivity(MainActivity.this, SlidingMenu.SLIDING_CONTENT);
    menu.setBehindWidth(10);
    menu.setBehindOffset(10);
    menu.setBehindScrollScale(0.25f);
    menu.setMenu(R.layout.menu_frame);


}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case android.R.id.home:
        toggle();
        return true;
    }
    return super.onOptionsItemSelected(item);
}


}

您可以使用
behindfset
behindWidth
touchmodeover
。 如果将其用作视图,则可以(在布局文件中)执行此操作:

进一步解释

touchmodeover
-一个枚举,指定在显示上述视图时屏幕的哪个部分是可触摸的。边距仅表示左侧边距。全屏是指整个屏幕。违约是保证金

behindOffset
-表示在显示后视图时希望上面视图显示的像素数的尺寸。默认值为0

behindWidth
-表示后视图宽度的尺寸。默认值是屏幕的宽度(相当于behindOffset=0)。

在代码中:

//SlidingMenu=getSlidingMenu()
滑动菜单=新的滑动菜单(本)

只需删除第一行中的//即可,因为此时您需要一个实例化的OBJETC

删除第二行,仅此而已。 在第二行中,您正在实例化一个新对象,这并不是必需的……一旦设置为内容视图之后,滑动菜单对象就会实例化


我也遇到了同样的问题,并通过这种方式解决了这个问题。

非常感谢Mark的回答。我在代码中使用了它,现在它的工作很好。
sliding:behindOffset="@dimen/YOUR_OFFSET"
sliding:behindWidth="@dimen/YOUR_WIDTH"
sliding:touchModeAbove="margin"