使用PagerSlidingTabStrips单击选项卡时切换标签不起作用

 viper-zhu_890_552 发布于 2023-01-04 11:00

我已经集成PagerSlidingTabStrips在我的应用程序中,该应用程序在选项卡的滑动上按预期运行.

但是选择标签PagerSlidingTabStrips不会切换到在标签之间滑动时完美运行的那个片段.

FragmentManager fm = getSupportFragmentManager();
mPager = (ViewPager) findViewById(R.id.pager);
ViewPagerAdapter viewpageradapter = new ViewPagerAdapter(fm);
mPager.setAdapter(viewpageradapter);
pagerSlidingTabStrp = (PagerSlidingTabStrip) findViewById(R.id.pager_sliding_tab_strip);
pagerSlidingTabStrp.setShouldExpand(true);
pagerSlidingTabStrp.setViewPager(mPager);
pagerSlidingTabStrp.setOnPageChangeListener(ViewPagerListener);     


// Capture ViewPager page swipes
    ViewPager.SimpleOnPageChangeListener ViewPagerListener = new ViewPager.SimpleOnPageChangeListener() {
        @Override
        public void onPageSelected(int position) {
            super.onPageSelected(position);
            switch(position)
            {
            case 0:
                setMotherActionBarTitle(getString(R.string.str_all_contacts_fragment));
                break;
            case 1:
                setMotherActionBarTitle(getString(R.string.str_group_contacts_fragment));
                break;
            case 2:
                setMotherActionBarTitle(getString(R.string.str_call_logs_fragment));
                break;                  
            }
        }
    };

ViewPagerAdapter

public class ViewPagerAdapter extends FragmentPagerAdapter implements IconTabProvider {
final int PAGE_COUNT = 3;
private final int[] ICONS = { R.drawable.tab_icon_zname_contact_selector, R.drawable.tab_icon_zname_friends_selector, 
        R.drawable.tab_icon_zname_call_log_selector };

public ViewPagerAdapter(FragmentManager fm) {
    super(fm);
}


@Override
public Fragment getItem(int item) {
    switch (item) {

    case 0:
        ContactsFragment homeFragment = new ContactsFragment();
        return homeFragment;
    case 1:
        GroupsFragment groupsFragment = new GroupsFragment();
        return groupsFragment;
    case 2:
        CallLogsFragment callLogsFragment = new CallLogsFragment();
        return callLogsFragment;
    }
    return null;
}

@Override
public int getCount() {
    return PAGE_COUNT;
}

@Override
public int getPageIconResId(int position) {
    return ICONS[position];
 }

} 

如何使选择标签适用于PagerSlidingTabStrips?更多的PagerSlidingTabStrips标签甚至不是clickabe.

我错过了实施的东西吗?或者添加pagerSlidingTabStrips.setClickable(true)?或者其他的东西?

再次选择的PagerSlidingTabStrips选项卡没有选择适当的选择器.可能的原因是什么?

这是它的图片. PagerSlidingTabStrips

1 个回答
  • 我已经找到了为什么PagerSlidingTabStrips在我寻找其他选项以及滑动标签功能之后点击标签不起作用,因为SlidingTabsLayout它也无法点击标签.

    发现问题是我的xml布局覆盖了整体,因为ViewPager它没有使标签可点击任何一个PagerSlidingTabStripsSlidingTabsLayout工作.

            <com.netdoers.zname.utils.PagerSlidingTabStrip
                android:id="@+id/pager_sliding_tab_strip"
                android:layout_
                android:layout_
                android:background="@android:color/white"
                app:pstsDividerColor="#FFFFA500"
                app:pstsIndicatorColor="#FFFFA500"
                app:pstsTabPaddingLeftRight="14dip"
                app:pstsUnderlineColor="#FFFFA500" />
    
    
            <android.support.v4.view.ViewPager
                android:id="@+id/pager"
                android:layout_
                android:layout_
                android:layout_marginTop="45dp" />
    

    离开相同的高度ViewpagerPagerSlidingTabStips从顶部在那里PagerSlidingTabStrips渲染解决了我的问题.

    2023-01-04 11:01 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有