java – 包含在HorizontalScrollView中的TabWidget不会使用ViewPager滚动
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 包含在HorizontalScrollView中的TabWidget不会使用ViewPager滚动,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1787字,纯文字阅读大概需要3分钟。
内容图文
![java – 包含在HorizontalScrollView中的TabWidget不会使用ViewPager滚动](/upload/InfoBanner/zyjiaocheng/791/bfd56d7592464e0d93e610733a06a664.jpg)
我不得不使用TabHost代替ActionBarTabs并使它们可滚动我将TabWidget包装在Horizo??ntalScrollView中,但Horizo??ntalScrollView不会根据ViewPager滚动自身.我尝试过几种不同的方式使用scrollTo和fullScroll,但它没有改变任何东西.我需要做些什么才能使其正常工作?
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<HorizontalScrollView
android:id="@id/horizontalScrollView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fillViewport="true"
android:scrollbars="@null" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" />
</HorizontalScrollView>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="0" />
<android.support.v4.view.ViewPager
android:id="@id/viewPager"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
</LinearLayout>
@Override
public void onTabChanged(String tabId) {
int position = mTabHost.getCurrentTab();
mViewPager.setCurrentItem(position);
mHorizontalScrollView.scrollTo(position, 0);
}
@Override
public void onPageScrolled(int position, float positionOffset,
int positionOffsetPixels) {
mHorizontalScrollView.scrollTo(position, 0);
}
解决方法:
调用.scrollTo(x,y)方法后调用.refreshDrawableState()时,水平滚动视图将发生变化.
需要注意的另一件事是.scrollTo(x,y)滚动使得x位于屏幕的左侧.您可能需要使用选项卡的坐标和水平滚动视图的宽度进行一些计算,以正确定位.你不能调用.scrollTo(position,0)并让它以你想要的方式工作(除非你的标签是1像素宽).
内容总结
以上是互联网集市为您收集整理的java – 包含在HorizontalScrollView中的TabWidget不会使用ViewPager滚动全部内容,希望文章能够帮你解决java – 包含在HorizontalScrollView中的TabWidget不会使用ViewPager滚动所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。