微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Webservice执行期间选项卡切换延迟android TabLayout

如何解决Webservice执行期间选项卡切换延迟android TabLayout


我正在使用显示 3 个选项卡的 TabLayout。当应用程序启动时,第一个选项卡进行 Webservice API 调用,在第一个选项卡第一个屏幕完成 Webservice 调用执行之前,我无法移动到第二个选项卡。单击 2ndTab 时,有没有办法可以停止我的 First Tab 执行。

我的 TabLaylaout 代码

 <ui_components.CustomTabLayout
        android:id="@+id/sliding_tabs"
        style="@style/tab_style"
        android:layout_width="match_parent"
        app:tabMode="scrollable"
        />

自定义标签布局:

class CustomTabLayout : TabLayout {
    constructor(context: Context) : super(context) {}
    constructor(context: Context,attrs: AttributeSet?) : super(context,attrs) {}
    constructor(context: Context,attrs: AttributeSet?,defStyleAttr: Int) : super(
        context,attrs,defStyleAttr
    ) {
    }

    override fun onMeasure(widthMeasureSpec: Int,heightMeasureSpec: Int) {
        val tabLayout: ViewGroup = getChildAt(0) as ViewGroup
        val childCount: Int = tabLayout.childCount
        if (childCount != 0) {
            val displayMetrics: displayMetrics = context.resources.displayMetrics
            val tabMinWidth: Int = displayMetrics.widthPixels / childCount
            for (i in 0 until childCount) {
                tabLayout.getChildAt(i).minimumWidth = tabMinWidth
            }
        }
        super.onMeasure(widthMeasureSpec,heightMeasureSpec)
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。