安卓滑动菜单 : Menu takes entire screen and wont retract

标签 android view slidingmenu

我遇到问题,我的滑动菜单出于某种原因占据了全屏...我环顾四周,有人说你需要设置 设置BehindOffsetRes 或者 setBehindOffset 让它工作..我有但它仍然不起作用..

主要 Activity :

package com.quapps.theinitiative;

import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;
import com.jeremyfeinstein.slidingmenu.lib.app.SlidingFragmentActivity;
import com.quapps.theinitiative.R;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends SlidingFragmentActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        setBehindContentView(R.layout.menu_frame);

        SlidingMenu menu = new SlidingMenu(this);
        menu.setMode(SlidingMenu.LEFT);
        menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
        menu.setShadowWidthRes(R.dimen.shadow_width);
        menu.setShadowDrawable(R.drawable.shadow);
        menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);
        menu.setFadeDegree(0.35f);
        menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
        menu.setMenu(R.layout.menu_frame);
        //menu.setBehindOffset(100);


    }
}

维度.xml

<resources>

    <!-- Default screen margins, per the Android Design guidelines. -->
    <dimen name="activity_horizontal_margin">16dp</dimen>
    <dimen name="activity_vertical_margin">16dp</dimen>

    <dimen name="slidingmenu_offset">60dp</dimen>
    <dimen name="list_padding">10dp</dimen>
    <dimen name="shadow_width">15dp</dimen>

</resources>

菜单框架.xml

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/menu_frame"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

Activity 主体

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world" />

</RelativeLayout>

我明白这可能是个愚蠢的东西,我就是找不到它

最佳答案

设置 SlidingMenu 的宽度应该可以解决问题,下面是如何在代码中完成。

getSlidingMenu().setBehindWidthRes(300dp);

300dp 应该在 resource/dimen 文件中指定,这样在运行时它可以相应地转换为像素值。如果您想直接指定像素,您只能使用“300”。

关于安卓滑动菜单 : Menu takes entire screen and wont retract,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21592714/

相关文章:

android - 在 YUV 颜色空间中操纵亮度

objective-c - 使用 presentModalViewController 时自定义/覆盖 View 大小

sql - 如何使 CREATE OR REPLACE VIEW 在 SQL Server 中工作?

sql - 安全地编写动态 SQL,使用在任何 View 中估计行的示例函数

android - 如何在滑动菜单中使用 Android Google Map V2 作为 fragment ?

swift - 从 UITableViewController 导航到详细信息 View Controller 时,ENSideMenu 不会再次快速打开

android - RecyclerView 滚动时隐藏工具栏会导致文本移至通知栏

android - 如何使用它们的经度和纬度值计算两个位置之间的距离

java - 如何从指纹扫描仪获取输入并保存

android - 运行 jfeinstein10 的 SlidingMenu 的示例应用程序