1

我正在 Appcelerator Studio 中开发一个 Android 应用程序。

在应用程序中,我有一个显示带有不同自定义图像的注释的地图。注释是这样创建的:

annotation = map.createAnnotation({
   image: 'images/pin' + myNumber + '.png',
   latitude: myLat,
   longitude: myLong,
   title: myTitle
});

几乎所有的注释都会显示出来,但有一些由于某种原因是不可见的。我已经验证 'images/pin' + myNumber + '.png' 是我想要显示的图像的实际路径。

显示的图像:

在此处输入图像描述

未显示的图像:

在此处输入图像描述

编辑

事情变得越来越奇怪。

出于测试目的,我创建了两个 ImageView,其图像属性分别设置为“images/pin3.png”和“images/pin163.png”。显示两个图像。但是,如前所述,将“images/pin163.png”设置为注释的图像属性时,它是不可见的。

非常感谢您的帮助,因为我不知道问题可能是什么。

用测试编辑 2:

Nexus 5,安卓 6.0.1:

  • 显示引脚 3
  • 引脚 163 不显示

索尼 Experia Z,Android 4.4:

  • 显示引脚 3
  • 引脚 163 不显示

索尼 Experia Z,Android 5.Something:

  • 显示引脚 3
  • 引脚 163 也显示
4

3 回答 3

2

我终于让它工作了。

我没有设置注释的图像属性,而是创建了一个视图,将视图的 backgroundImage 属性设置为我的图像,然后将视图分配给注释的 customView 属性。

var customAnnotationView = Ti.UI.createView({
    backgroundImage: 'images/pin' + myNumber + '.png',
});

var annotation = map.createAnnotation({
   customView: customAnnotationView,
   latitude: myLat,
   longitude: myLong,
   title: myTitle
});
于 2016-03-19T16:09:21.760 回答
0

我也在 Appcelerator Studio 中开发了一个 Android 应用程序,在我的项目中有很多图像;在特殊情况下,我尝试在同一个控制器中加载许多图像,但通常不会显示所有图像。最后,我发现这个问题的原因是图像的大小。事实上,如果我调整它们的大小,所有的都会显示出来。

我希望我的经验会有所帮助。

让我知道。

问候

于 2016-02-07T11:37:36.820 回答
-1

在Android上也有类似的问题。确保您已将具有正确分辨率的图像放入密度文件夹中:

/Resources/android/images/res-mdpi/
/Resources/android/images/res-hdpi/
/Resources/android/images/res-xhdpi/
/Resources/android/images/res-xxhdpi/
于 2016-02-07T01:55:34.333 回答