2

我正在尝试确定是否必须滚动(以及滚动多少)我的标签以显示其他人,如果它们不完整。为了实现这一点,我需要知道我的 TabHost(在 Horizo​​ntalScrollView 内)有多少在屏幕之外(以像素为单位)。

直到现在我已经尝试过

        int totalLength = 0, totalLength1 = 0;
        for(int i =0; i<mTabHost.getChildCount(); i++){
            try {
                totalLength += mTabHost.getChildAt(i).getWidth();
                totalLength1+= mTabHost.getChildAt(i).getLayoutParams().width;
            } catch (Exception e) {
                toast("ERROR: "+i);
                e.printStackTrace();
            }
        }

但它返回的宽度与屏幕宽度一样多,而不是一个像素。 mScrollView.getWidth()超过它时也会返回我的屏幕宽度。 mScrollView.getMeasureWidth()也不行。

我做了一些研究,但到目前为止,我发现的只是一个叫做mScrollview.getMaxSCrollAmmout(); 但我很难弄清楚它是如何工作的

编辑: mScrollview.getMaxSCrollAmmout()也没有用。

编辑 2:看起来该操作与 ViewPagerIndicator 所做的非常相似,如果有人熟悉源代码可能会向我解释:D

4

0 回答 0