其他分享
首页 > 其他分享> > Android TabHost Auto在TabChange的侧面ScrollView中垂直滚动?

Android TabHost Auto在TabChange的侧面ScrollView中垂直滚动?

作者:互联网

我在我的Activity中使用ScrollView中的TabHost但是当我选择tab时它会自动垂直滚动我的视图结束.

解决方法:

在这种情况下,子视图由于向上滚动而获得焦点.

要解决此问题,您需要创建扩展ScrollView的自定义ScrollView.
代码片段看起来像这样.

public class MyScrollView extends ScrollView {


    public MyScrollView(Context context) {
        super(context);

    }



    public MyScrollView(Context context, AttributeSet attrs) {
        super(context, attrs);

    }


    @Override
    public void requestChildFocus(View child, View focused) {
       // if (focused instanceof TabHost)   // here 
            return;
        //super.requestChildFocus(child, focused);
// here you need to return instead of **super.requestChildFocus(child, focused);**
    }

和xml看起来像这样

  <com.views.widget.MyScrollView
        android:focusable="false"
        android:focusableInTouchMode="false"
    android:id="@+id/root_scroll_view"
    android:layout_width="match_parent"
    android:fillViewport="true"
    android:layout_height="wrap_content">

</com.views.widget.MyScrollView >

标签:android,android-tabhost,android-scrollview
来源: https://codeday.me/bug/20191007/1865639.html