AndroidTalkback没有在选项卡列表中宣布选项卡计数。
创始人
2024-08-21 14:30:27
0次

你可以通过在选项卡列表的AppBarLayout或ViewPager中添加AccessibilityDelegateCompat来解决此问题。 在AppbarLayout中,你可以通过访问其子项来获取TabLayout,并获取其子项的个数来报告选项卡的总数。 在ViewPager中,你可以使用PagerAdapter中的getPageTitle()方法获取选项卡标题,以及使用getCount()方法获取选项卡总数。

示例代码:

AppBarLayout:

appBarLayout.setAccessibilityDelegateCompat(new AccessibilityDelegateCompat() {
    @Override
    public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
        super.onInitializeAccessibilityNodeInfo(host, info);
        TabLayout tabLayout = (TabLayout) appBarLayout.getChildAt(0);
        if (tabLayout != null) {
            int tabCount = tabLayout.getTabCount();
            info.setContentDescription(getString(R.string.tab_list_description, tabCount));
        }
    }
});

ViewPager:

final ViewPager viewPager = findViewById(R.id.view_pager);
viewPager.setAdapter(new PagerAdapter(getSupportFragmentManager()) {
    @Override
    public int getCount() {
        return 3; // number of tabs
    }

    @Override
    public CharSequence getPageTitle(int position) {
        // tab titles
        switch (position) {
            case 0:
                return getString(R.string.tab_title1);
            case 1:
                return getString(R.string.tab_title2);
            case 2:
                return getString(R.string.tab_title3);
            default:
                return null;
        }
    }
});

viewPager.setAccessibilityDelegateCompat(new AccessibilityDelegateCompat() {
    @Override
    public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
        super.onInitializeAccessibilityNodeInfo(host, info);
        int tabCount = viewPager.getAdapter().getCount();
        info.setContentDescription(getString(R.string.tab_list_description, tabCount));
    }
});

在以上示例代码中,getString(R.string.tab_list_description, tabCount)将返回包含选项卡计数的文本。 您需要在strings.xml文件中添加tab_list_description字符串。

相关内容

热门资讯

揭秘攻略辅助!多乐够级辅助透视... 揭秘攻略辅助!多乐够级辅助透视挂,开运麻将存在有外挂,总是有挂总结多乐够级是不是有人用挂微扑克wpk...
于此同时辅助!永利皇宫辅助透视... 于此同时辅助!永利皇宫辅助透视挂,兴动助手真的有外挂,其实有挂细节1)兴动助手免费钻石:进一步探索兴...
经核实辅助!微友麻将辅助透视挂... 您好,益乐绍兴麻将这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很多玩家在...
实操分享开挂!鼎盛休闲辅助透视... 实操分享开挂!鼎盛休闲辅助透视挂,朋朋棋牌是真的有外挂,原来真实有挂;一、朋朋棋牌游戏安装教程牌型概...
据了解透视挂!热血大陆辅助透视... 据了解透视挂!热血大陆辅助透视挂,火拼耍大牌存在有外挂,果然有挂神器1、热血大陆辅助器安装包、热血大...
目前透视挂!江城互娱辅助透视挂... 目前透视挂!江城互娱辅助透视挂,越乡游双扣存在有外挂,都是有挂神器1、起透看视 越乡游双扣辅助软件价...
玩家必备教程辅助!31373游... 玩家必备教程辅助!31373游戏辅助透视挂,响水麻将存在有外挂,原来有挂教学1、让任何用户在无需31...
一分钟了解开挂!炫酷众娱辅助透... 一分钟了解开挂!炫酷众娱辅助透视挂,好彩漳州麻将真的是有外挂,其实真是有挂炫酷众娱透视方法中分为三种...
今天下午辅助!钻石大厅辅助透视... 您好,新乐清麻将这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很多玩家在这...
分享一款透视挂!九九辅助透视挂... 分享一款透视挂!九九辅助透视挂,湘乐是真的有外挂,一贯新版有挂1、分享一款透视挂!九九辅助透视挂,湘...