【发布时间】:2018-06-08 12:31:07
【问题描述】:
当我使用 ScrollView 时,它可以工作 5 个 imagebuttons,但是如果我尝试添加一个新的,它会因“OutofMemory 错误”而崩溃,这很奇怪,因为当我重新使用了以前用过的按钮,效果很好,但我不知道为什么。所有图像的分辨率相同 (530x143),背景透明。
这是我的.xml,希望你能帮助我:
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageButton
android:id="@+id/cat_ib1"
android:layout_width="235sp"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="71dp"
android:background="@android:color/transparent"
android:scaleType="fitCenter"
android:src="@drawable/categories_action" />
<ImageButton
android:id="@+id/cat_ib2"
android:layout_width="235sp"
android:layout_height="wrap_content"
android:layout_alignStart="@+id/cat_ib1"
android:layout_below="@+id/cat_iv_csik"
android:layout_marginTop="56dp"
android:background="@android:color/transparent"
android:scaleType="fitCenter"
android:src="@drawable/categories_adventure" />
<ImageButton
android:id="@+id/cat_ib3"
android:layout_width="235sp"
android:layout_height="wrap_content"
android:layout_alignStart="@+id/cat_ib2"
android:layout_below="@+id/cat_ib1"
android:layout_marginTop="25dp"
android:background="@android:color/transparent"
android:scaleType="fitCenter"
android:src="@drawable/categories_animation" />
<ImageButton
android:id="@+id/cat_ib4"
android:layout_width="235sp"
android:layout_height="wrap_content"
android:layout_alignStart="@+id/cat_ib3"
android:layout_below="@+id/cat_ib2"
android:layout_marginTop="25dp"
android:background="@android:color/transparent"
android:scaleType="fitCenter"
android:src="@drawable/categories_anime" />
<ImageButton
android:id="@+id/cat_ib5"
android:layout_width="235sp"
android:layout_height="wrap_content"
android:layout_alignStart="@+id/cat_ib4"
android:layout_below="@+id/cat_ib3"
android:layout_marginTop="25dp"
android:background="@android:color/transparent"
android:scaleType="fitCenter"
android:src="@drawable/categories_biography" />
<ImageButton
android:id="@+id/cat_ib6"
android:layout_width="235sp"
android:layout_height="wrap_content"
android:layout_alignStart="@+id/cat_ib5"
android:layout_below="@+id/cat_ib4"
android:layout_marginTop="25dp"
android:background="@android:color/transparent"
android:scaleType="fitCenter"
android:src="@drawable/categories_cartoon" />
<ImageButton
android:id="@+id/cat_ib7"
android:layout_width="235sp"
android:layout_height="wrap_content"
android:layout_alignStart="@+id/cat_ib6"
android:layout_below="@+id/cat_ib5"
android:layout_marginTop="25dp"
android:background="@android:color/transparent"
android:scaleType="fitCenter"
android:src="@drawable/categories_comedy" />
<ImageButton
android:id="@+id/cat_ib8"
android:layout_width="235sp"
android:layout_height="wrap_content"
android:layout_alignStart="@+id/cat_ib7"
android:layout_below="@+id/cat_ib6"
android:layout_marginTop="25dp"
android:background="@android:color/transparent"
android:scaleType="fitCenter"
android:src="@drawable/categories_crime_gangster" />
<ImageView
android:id="@+id/cat_iv_csik"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:src="@drawable/csik" />
</RelativeLayout>
</ScrollView>
在 cat_ib5 按钮之后,每当我尝试添加另一个 ImageButton 时,应用程序就会崩溃。 (整个代码在RelativeLayout中)
【问题讨论】:
-
尝试以编程方式设置Image源,通过reduced Bitmap设置,相关见link
-
看起来可绘制的图像有点重。
标签: android