Android Wear: WearableActivity with FragmentPagerAdapter

匿名 (未验证) 提交于 2019-12-03 01:08:02

问题:

When using the WearableActivity you can't reach getSupportFragmentManager() which FragmentPagerAdapter requires, so you need to use getFragmentManager().

Activity

public MyWearActivity extends WearableActivity {      public ArrayList<Fragment> mFragments;     public ArrayList<String> mTitles;     public ViewPager mViewPager;     public PageFragmentPagerAdapter mPagerAdapter;      @Override     public void onCreate(Bundle b) {         super.onCreate(b);         setContentView(R.layout.main);         fragments = new ArrayList<>();         mTitles = new ArrayList<>();         mViewPager = (ViewPager) findViewById(R.id.viewpager); 

        mPagerAdapter = new PageFragmentPagerAdapter(getFragmentManager()); <-- PROBLEM 

        // More code     } } 

Pager adapter

public class PageFragmentPagerAdapter extends FragmentPagerAdapter {      public PageFragmentPagerAdapter(FragmentManager fm) { 

        super(fm); <-- PROBLEM 

    }      @Override     public int getCount() {         return mFragments.size();     }      @Override     public PageFragment getItem(int position) {         return mFragments.get(position);     }      @Override     public CharSequence getPageTitle(int position) {         return mTitles.get(position);     } } 

What can I do to use a FragmentPagerAdapter inside a WearableActivity?

回答1:

Just came across the same problem.

I've got around it with adding

compile 'com.android.support:support-v13:23.1+' 

to the dependencies in the build.gradle file. Then where you use the FragmentPagerAdapter add

import android.support.v13.app.FragmentPagerAdapter; 

Not sure if there's a better way yet.



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!