我有一个钛合金视图,它输出TableView
,每个视图缩略图。这是通过将URL传递到image
元素的ImageView
属性来实现的。因为它是一个由Alloy集合填充的Alloy视图,它为我处理数据循环:
<TableView id="brandsList" dataCollection="brands">
<TableViewRow brandID="{brand_id}">
<View class="vgroup">
<ImageView height="45" width="80" id="image" image="{image}" />
<Label id="name" text="{name}" />
</View>
</TableViewRow>
</TableView>
但是,我想在之前更改该网址字符串到达上面的视图。特别是我需要在URL的中间添加一些值来改变图像质量和大小。如何捕获此字符串字符串值并进行更改?
答案 0 :(得分:5)
从这段代码看起来你正在进行数据绑定。您可以在视图中显示数据之前对其进行转换
http://docs.appcelerator.com/titanium/latest/#!/guide/Alloy_Data_Binding
<TableView id="brandsList" dataCollection="brands" dataTransform="transformFunction">
<TableViewRow brandID="{brand_id}">
<View class="vgroup">
<ImageView height="45" width="80" id="image" image="{image}" />
<Label id="name" text="{name}" />
</View>
</TableViewRow>
</TableView>
然后在代码中
function transformFunction(model) {
// Need to convert the model to a JSON object
var transform = model.toJSON();
transform.image = /* do someting to image url string */;
return transform;
}