【问题标题】:How to use ActionBarSherlock, ViewPagerIndicator and SlidingMenu如何使用 ActionBarSherlock、ViewPagerIndicator 和 SlidingMenu
【发布时间】:2012-12-16 02:29:09
【问题描述】:

如何设置项目依赖项以使用 ActionBarSherlock、ViewPagerIndicator 和 SlidingMenu(在 inteliij 中)?

这是我的设置:

  • 我已将 ActionBarSherlock 添加为 ViewPagerIndicator 的依赖项。
  • 将 ViewPagerIndicator 添加为我的项目的依赖项。

一切正常。我想添加 SlidingMenu(注意:ActionBarSherlock 是 SlidingMenu 的依赖项)作为我项目的依赖项。我怎样才能做到这一点? [我认为我的问题是在这种情况下我不知道如何设置所有依赖项]

编辑: 我想要这个结果的 ViewPagerIndicator :

【问题讨论】:

  • 如果您同时使用 ActionBarSherlock 和滑动菜单,那么我认为也不需要 viewpageIndicator。
  • 在我的项目中,我已经将这两个库都依赖于我在 Intellij idea 中的主项目

标签: android intellij-idea dependencies actionbarsherlock viewpagerindicator


【解决方案1】:

我可以使用(需要添加Android兼容库):

public class MainActivity extends SlidingFragmentActivity  {
        private ViewPager viewPager;
        private RelativeLayout root;            
        @Override
        public void onCreate(Bundle savedState) {
                super.onCreate(savedState);
                root = (RelativeLayout) getLayoutInflater().inflate(R.layout.activity_main, null);
                setBehindContentView(root);

                (...)

                viewPager = (ViewPager) getLayoutInflater().inflate(R.layout.viewPager, null);
                setContentView(vPager);

                viewPager.setOnPageChangeListener(new OnPageChangeListener() {
                    @Override
                    public void onPageSelected(int id) {                                
                        switch (id) {
                        case 0:             
                            getSlidingMenu().setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); //on first page, you can get slidingmenu by swipping the entire screen
                            break;               
                        default:
                            getSlidingMenu().setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN); //on others page, you can get slidingmenu by swipping the half screen
                            break;
                        }                

                    }
                    @Override
                    public void onPageScrolled(int arg0, float arg1, int arg2) {

                    }
                    @Override
                    public void onPageScrollStateChanged(int arg0) {

                    }
                });
        }

}

在您的 FragmentPageAdapter 上,覆盖

   @Override
    public CharSequence getPageTitle(int position) {
        return "your page title for position"
    }

->activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/layoutFull"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#66ffffff"
    android:baselineAligned="true"
    android:orientation="vertical" >    

</RelativeLayout>

-> viewPager.xml

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

    <android.support.v4.view.PagerTabStrip
        android:id="@+id/pager_title_strip"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="top"
        android:background="#fff"
        android:paddingBottom="2dp"
        android:paddingTop="2dp"
        android:textColor="#000" />

</android.support.v4.view.ViewPager>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多