滑动菜单J. Feinstein的实现

我试图用jeremy feinstein的SlidingMenu库开发一个应用程序,我发现它非常有趣。 我已经建立了一切,并创建了一个示例项目来检查我是否能够实现滑动菜单,但不幸的是,我的应用程序中看不到任何滑动菜单。

这些都是我所做的事情,

  • 从HERE下载SlidinMenu并作为Android现有项目导入到eclipse中。 改变了它的谷歌API级别。 (现在没有更多的红色标记。)

  • 创建一个新项目,并添加滑动菜单库。

  • 正如jfeinstein所解释的,我将下面的代码添加到了我的MainActivity.java中

    public class MainActivity extends Activity {
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    
        setTitle("Title !");
    
        setContentView(R.layout.activity_main);
    
        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);
    
    }
    

    }

  • 和我的activity_main.xml

    <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"
        tools:context=".MainActivity" >
    
    
    <com.slidingmenu.lib.SlidingMenu
        xmlns:sliding="http://schemas.android.com/apk/res-auto"
        android:id="@+id/slidingmenulayout"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        sliding:viewAbove="@layout/testing"
        sliding:viewBehind="@layout/testing_two"
        sliding:touchModeAbove="margin"
        sliding:behindWidth="@dimen/shadow_width"
        sliding:behindScrollScale="0.5"
        sliding:shadowDrawable="@drawable/shadow"
        sliding:shadowWidth="@dimen/shadow_width"
        sliding:fadeEnabled="true"
        sliding:selectorEnabled="true"/>
    
    </RelativeLayout>
    

    menu_frame.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" />
    

    testing.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    
    <TextView 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Test"/>
    </LinearLayout>
    

    我已将他的menu.xmlshadow.xmldimen.xml复制到我的项目中。

    当我运行它时,除了这些错误,我什么都看不到,

    01-31 22:18:13.027: E/AndroidRuntime(759): FATAL EXCEPTION: main
    01-31 22:18:13.027: E/AndroidRuntime(759): java.lang.RuntimeException: Unable to start activity ComponentInfo{android.demo.com/android.demo.com.MainActivity}: android.view.InflateException: Binary XML file line #2: Error inflating class fragment
    

    我不知道我犯了什么错误。 试了很多,我无法找到任何网上的东西。 任何形式的帮助或例子都非常感谢。 谢谢 !


    你的问题在这里。你的代码:

    sliding:viewAbove="@layout/menu_frame"
    sliding:viewBehind="@layout/menu_frame"
    

    从doc例子:

    sliding:viewAbove="@layout/YOUR_ABOVE_VIEW"
    sliding:viewBehind="@layout/YOUR_BEHIND_BEHIND"
    

    你必须确定以上是什么以及背后是什么。

    更新:我测试了你的代码,它没有问题。 我唯一需要做的就是删除sliding:fadeEnabled="true"因为我的编译错误。 您可能想要查看代码中的其他位置,或尝试删除该行并尝试。

    链接地址: http://www.djcxy.com/p/68883.html

    上一篇: Implementation of Sliding Menu J. Feinstein

    下一篇: Episerver customise complex data type in grid in edit mode