我目前正在为android和iOs开发一款钛应用程序,其中包括一个应可滚动和可扩展的imageView(通过滑块)。我已经在iOs上实现了这一点,但在Android上,很难实现滚动行为。我决定使用TiTouchImageView模块,但文档只显示了如何在非Alloy项目中使用它。我当前的代码如下:
if (Ti.Platform.osname == "android") {
var TiTouchImageView = require('org.iotashan.TiTouchImageView');
var androidImageView = TiTouchImageView.createView({
top: 0,
left: 0,
zoom: originalScaleValue,
maxZoom: originalScaleValue*2,
minZoom: originalScaleValue,
image: blob, });
$.androidInnerImageScrollView.add(androidImageView);
} else {
$.iosPicture.setImage(blob);
}
但是有没有可能通过view.xml将其作为合金组件加载?
编辑:我用合金中的module
标签尝试过:
<ScrollView id="androidInnerImageScrollView">
<Module module="org.iotashan.titouchimageview" id="androidPicture"></Module>
</ScrollView>
但我一直收到这个错误消息:
Uncaught Error: Requested module not found: org.iotashan.touchimageview
我一直在我的项目中使用这个。
在xml中
<View id="windowView" module="org.iotashan.TiTouchImageView" platform="android" minZoom="0.1" maxZoom="9.5"></View>
在tss中
"#windowView":{
top: 44,
height: Ti.UI.FILL,
width: Ti.UI.FILL,
backgroundColor: "trasparent"
}
在JS中
$.windowView.image = "image path here"
它的作用就像一种魅力。
感谢您的输入Arturo,但这不是问题所在。通过阅读指南,我终于学会了如何在合金项目中使用模块。我的最终代码如下:
<Module module="org.iotashan.TiTouchImageView" id="androidPicture"></Module>
是否将模块引用添加到tiapp.xml?任何模块都应该在Alloy上工作,您只需要注意SDK版本。