【问题标题】:App crashes, when using ScrollView使用 ScrollView 时应用程序崩溃
【发布时间】: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


【解决方案1】:

尝试将@drawable/categories_biography 中的图片移动到drawable xxhdpi 文件夹中

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-29
    • 2014-04-18
    • 2023-03-04
    • 2015-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多