SlidingMenu和ActionbarActivity实现slidingmenu

    非常喜欢 网易新闻客户端的 界面风格,一直都想知道是怎么实现的。下午敲代码太累了,浏览了一下网页发现了几个android的开源项目,然后和网易新闻客户端一对比知道使用的应该是sliding menu 还有个下拉刷新的开源项目,不知道有没有使用actionbarsherlock。

    在csdn上有一篇博客写的就是防网易新闻客户端的文章(http://blog.csdn.net/top_code/article/details/17360853)

索性就按照博客作者的文章搭了一下Eclipse环境,觉得不过瘾就照着文章在android studio中进行实现,但是能力不够搭的aar包,怎么都不起作用。只能手动的复制slidingmenu代码到自己的工程里面。

    一开始用得时actionbarsherlock,据说这俩是绝配。奈何我不会使用actionbarsherlock,复制完slidingmenu代码和例子代码后,getActionbar()方法老师报空指针,无奈只能换回官方的兼容包,使用ActionBarActivity来进行实现。天助我没有大问题,能够成功的实现。但是还是报一个错

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.lee.learn.slidingmenu.testsildingmenu.app/com.lee.learn.slidingmenu.testsildingmenu.app.MainActivity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
            at android.app.ActivityThread.access$800(ActivityThread.java:135)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5017)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
            at android.support.v7.app.ActionBarActivityDelegate.onCreate(ActionBarActivityDelegate.java:108)
            at android.support.v7.app.ActionBarActivityDelegateICS.onCreate(ActionBarActivityDelegateICS.java:57)
            at android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:98)
            at com.jeremyfeinstein.slidingmenu.lib.app.SlidingActivity.onCreate(SlidingActivity.java:21)
            at com.lee.learn.slidingmenu.testsildingmenu.app.MainActivity.onCreate(MainActivity.java:38)
            at android.app.Activity.performCreate(Activity.java:5231)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
            at android.app.ActivityThread.access$800(ActivityThread.java:135)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5017)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
            at dalvik.system.NativeStart.main(Native Method)

明明自己的Theme已经换成Theme.AppCompat.Light.DarkActionBar了,按说应该没问题啊但是还是出错。

代码如下

http://git.oschina.net/lixuwei/TestSildingMenu


你可能感兴趣的:(SlidingMenu,AndroidSutdio)