{添加两个或更多水平滚动视图后水平ScrollView滞后}
当活动中有两个水平滚动视图时,应用程序工作正常,但当我添加第三个时,它开始滞后。
编辑:添加了XML布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#77a9f9"
tools:context="in.trentweet.socialaccess.home"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/social"
android:layout_marginTop="20dp"
android:text="Social Media:"
android:textSize="20sp"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="5dp"
android:scrollbarAlwaysDrawHorizontalTrack="true"
android:fillViewport="true">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="90dp"
android:background="#e2e2e2"
android:orientation="horizontal"
android:weightSum="1">
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:layout_marginBottom="5dp"
android:clickable="true"
android:id="@+id/fb"
android:background="@drawable/facebook"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/tw"
android:clickable="true"
android:background="@drawable/twitter"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/google"
android:background="@drawable/google"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/insta"
android:background="@drawable/insta"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/tumblr"
android:background="@drawable/tumblr"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/yt"
android:background="@drawable/yt"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/gag"
android:background="@drawable/gag"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/pin"
android:background="@drawable/pin"/>
</LinearLayout>
</HorizontalScrollView>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/news"
android:text="News:"
android:textSize="20sp"
android:layout_marginTop="5dp"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="5dp"
android:scrollbarAlwaysDrawHorizontalTrack="true"
android:fillViewport="true">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="90dp"
android:background="#e2e2e2"
android:orientation="horizontal"
android:weightSum="1">
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:layout_marginBottom="5dp"
android:id="@+id/toi"
android:clickable="true"
android:background="@drawable/toi"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/ndtv"
android:clickable="true"
android:background="@drawable/ndtv"/>
<ImageButton
android:layout_width="75dp"
android:layout_height="72dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/th"
android:clickable="true"
android:background="@drawable/th"/>
</LinearLayout>
</HorizontalScrollView>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Sports:"
android:id="@+id/sports"
android:layout_marginTop="20dp"
android:textSize="20sp"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="5dp"
android:scrollbarAlwaysDrawHorizontalTrack="true"
android:fillViewport="true">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="90dp"
android:background="#e2e2e2"
android:orientation="horizontal"
android:weightSum="1">
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:layout_marginBottom="5dp"
android:id="@+id/espn"
android:clickable="true"
android:background="@drawable/espn"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/nba"
android:clickable="true"
android:background="@drawable/nba"/>
<ImageButton
android:layout_width="75dp"
android:layout_height="72dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/cric"
android:clickable="true"
android:background="@drawable/cricbuzz"/>
<ImageButton
android:layout_width="75dp"
android:layout_height="72dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/goal"
android:clickable="true"
android:background="@drawable/goal"/>
<ImageButton
android:layout_width="75dp"
android:layout_height="72dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/fot"
android:clickable="true"
android:background="@drawable/fotmob"/>
<ImageButton
android:layout_width="75dp"
android:layout_height="72dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/sky"
android:clickable="true"
android:background="@drawable/sky"/>
</LinearLayout>
</HorizontalScrollView>
</LinearLayout>
&#13;
答案 0 :(得分:0)
我现在修改你的代码如下。我使用线性布局的 weightSum 属性来管理您的布局。我还在水平滚动视图 90dp中更改了 LinearLayout 高度以匹配父级。现在只需复制并粘贴即可。它几乎可以用于所有屏幕尺寸
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#77a9f9"
android:weightSum="6"
tools:context="in.trentweet.socialaccess.home"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1.1"
android:id="@+id/social"
android:layout_marginTop="10dp"
android:text="Social Media:"
android:textSize="20sp"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="5dp"
android:layout_weight=".9"
android:scrollbarAlwaysDrawHorizontalTrack="true"
android:fillViewport="true">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#e2e2e2"
android:orientation="horizontal"
android:weightSum="1">
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:layout_marginBottom="5dp"
android:clickable="true"
android:id="@+id/fb"
android:background="@drawable/facebook"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/tw"
android:clickable="true"
android:background="@drawable/twitter"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/google"
android:background="@drawable/google"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/insta"
android:background="@drawable/insta"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/tumblr"
android:background="@drawable/tumblr"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/yt"
android:background="@drawable/yt"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/gag"
android:background="@drawable/gag"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/pin"
android:background="@drawable/pin"/>
</LinearLayout>
</HorizontalScrollView>
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/news"
android:text="News:"
android:layout_weight="1.1"
android:textSize="20sp"
android:layout_marginTop="5dp"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="5dp"
android:layout_weight=".9"
android:scrollbarAlwaysDrawHorizontalTrack="true"
android:fillViewport="true">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#e2e2e2"
android:orientation="horizontal"
android:weightSum="1">
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:layout_marginBottom="5dp"
android:id="@+id/toi"
android:clickable="true"
android:background="@drawable/toi"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/ndtv"
android:clickable="true"
android:background="@drawable/ndtv"/>
<ImageButton
android:layout_width="75dp"
android:layout_height="72dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/th"
android:clickable="true"
android:background="@drawable/th"/>
</LinearLayout>
</HorizontalScrollView>
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="Sports:"
android:layout_weight="1.1"
android:id="@+id/sports"
android:layout_marginTop="20dp"
android:textSize="20sp"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="5dp"
android:layout_weight=".9"
android:scrollbarAlwaysDrawHorizontalTrack="true"
android:fillViewport="true">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#e2e2e2"
android:orientation="horizontal"
android:weightSum="1">
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:layout_marginBottom="5dp"
android:id="@+id/espn"
android:clickable="true"
android:background="@drawable/espn"/>
<ImageButton
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/nba"
android:clickable="true"
android:background="@drawable/nba"/>
<ImageButton
android:layout_width="75dp"
android:layout_height="72dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/cric"
android:clickable="true"
android:background="@drawable/cricbuzz"/>
<ImageButton
android:layout_width="75dp"
android:layout_height="72dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/goal"
android:clickable="true"
android:background="@drawable/goal"/>
<ImageButton
android:layout_width="75dp"
android:layout_height="72dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/fot"
android:clickable="true"
android:background="@drawable/fotmob"/>
<ImageButton
android:layout_width="75dp"
android:layout_height="72dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:id="@+id/sky"
android:clickable="true"
android:background="@drawable/sky"/>
</LinearLayout>
</HorizontalScrollView>
</LinearLayout>
谢谢