当页面应用Fragment来实现TabHost功能效果时,Fragment中添加Fragment类A,B,C。
类A中的布局为Viewpager( add Fragment类),加入的Fragment类中应用ScrollView,此时,在切换 A , B , C页面时,
A页面中的ScrollView焦点会发生上移现象。
可以在最早的Fragment中添加
android:focusableInTouchMode="true"
android:focusable="true"
android:descendantFocusability="beforeDescendants"
这样就能解决此问题。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_height="match_parent"
android:layout_width="match_parent">
<FrameLayout
android:focusableInTouchMode="true"
android:focusable="true"
android:descendantFocusability="beforeDescendants"
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<TextView
android:id="@+id/main_tab_top_line"
android:layout_width="match_parent"
android:layout_height="1px"
android:background="@color/act_line" />
<include layout="@layout/layout_main_tabs"/>
</LinearLayout>