Android图层图片

时间:2015-12-16 08:48:15

标签: android

我在彼此之上绘制一组图像,类似于http://webhelp.esri.com/arcgisserver/9.3/java/geodatabases/data_themes_as_layers.gif,其中每个图像都有透明区域和可点击的区域。我们的想法是拥有一个可点击区域的车辆图像,当然有些区域是不可点击的,这些区域是透明的。

每张图片的格式不同:HDPI,MDPI,XHDPI,XXHDPI,XXXHDPI。 渲染它会导致某些设备崩溃,因为它耗尽内存,所以显然这里做错了或者图像太大了?我确实根据规格检查了图像的大小。

我使用的布局:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/ScreenLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <ImageView
        android:id="@+id/BASE"
        android:tag="-1"
        android:src="@drawable/car_base_right"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/car_B1"
        android:tag="0"
        android:background="@android:color/transparent"
        android:src="@drawable/car_B1_green"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/car_B2"
        android:tag="0"
        android:background="@android:color/transparent"
        android:src="@drawable/car_B2_green"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/car_B3"
        android:tag="0"
        android:background="@android:color/transparent"
        android:src="@drawable/car_B3_green"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/car_B4"
        android:tag="0"
        android:background="@android:color/transparent"
        android:src="@drawable/car_B4_green"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/car_B5"
        android:tag="0"
        android:background="@android:color/transparent"
        android:src="@drawable/car_B5_green"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/car_B6"
        android:tag="0"
        android:background="@android:color/transparent"
        android:src="@drawable/car_B6_green"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/car_B7"
        android:tag="0"
        android:background="@android:color/transparent"
        android:src="@drawable/car_B7_green"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/car_B8"
        android:tag="0"
        android:background="@android:color/transparent"
        android:src="@drawable/car_B8_green"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/car_B9"
        android:tag="0"
        android:background="@android:color/transparent"
        android:src="@drawable/car_B9_green"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/car_B10"
        android:tag="0"
        android:background="@android:color/transparent"
        android:src="@drawable/car_B10_green"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <ImageView
        android:id="@+id/car_B11"
        android:tag="0"
        android:background="@android:color/transparent"
        android:src="@drawable/car_B11_green"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
</FrameLayout>

1 个答案:

答案 0 :(得分:2)

  

您正在处理大型图像并在运行时加载所有图像。   您必须通过加载大小来非常仔细地处理大图像   你不需要一次完整的图像,然后进行缩放。

解决方案

  1. 缩小图像尺寸&amp;决议。
  2. 清单文件中的
  3. android:largeHeap=”true” 标记。