我正在开发适用于iphone的移动网络应用。我从网络服务获取数据的地方。 问题是我的图片视图不适用于点击事件。我不知道原因...... 请帮忙...我发布了我的代码...
Titanium.include('commonFile.js');
var win = Ti.UI.currentWindow;
var url = carsDetailUrl + nid;
var imageArea = Titanium.UI.createView({
width : 300,
top: 50,
height : 125,
borderRadius : 6
});
var image1 = Ti.UI.createImageView({
image : "",
left : '8dp',
top : '10dp',
width : 135,
height : 106,
touchEnabled : 'true',
borderColor : '#000000',
borderRadius : 6,
borderWidth : 1,
});
var completeScrollView = Ti.UI.createScrollView({
top : '0dp',
left : '0dp',
contentWidth : 320,
touchEnabled : 'true',
borderRadius : 10,
backgroundImage : '../images/bg.png',
showHorizontalScrollIndicator : false,
showVerticalScrollIndicator : false,
//height : '300dp'
});
var xhr = Ti.Network.createHTTPClient({
onload : function() {
var tableData = [];
var headLines, imageLabel, i, row, viewDetail, cars, images;
cars = JSON.parse(this.responseText);
headLines = cars.data[1];
images = cars.data[1]['image'];
var mainScrollView = Ti.UI.createScrollView({
top : '0dp',
left : '0dp',
contentWidth : 320,
touchEnabled : 'true',
borderRadius : 10,
backgroundImage : '../images/bg.png',
showHorizontalScrollIndicator : false,
showVerticalScrollIndicator : false,
});
var viewDetail = Ti.UI.createView({
top : '10dp',
left : '10dp',
height : 'auto',
width : '94%',
touchEnabled : 'true',
borderRadius : 10,
backgroundColor : '#FFFFFF',
});
image1.image = encodeURI(images[1]);
/*var image1 = Ti.UI.createImageView({
image : encodeURI(images[1]),
left : '8dp',
top : '10dp',
width : 135,
height : 106,
touchEnabled : 'true',
borderColor : '#000000',
borderRadius : 6,
borderWidth : 1,
});*/
var image2 = Ti.UI.createImageView({
image : encodeURI(images[2]),
left : '150dp',
top : '11dp',
width : '70dp',
height : '50dp',
borderColor : '#000000',
borderRadius : 3,
borderWidth : 1,
});
viewDetail.add(imageArea);
imageArea.add(image1);
imageArea.add(image2);
mainScrollView.add(viewDetail);
mainScrollView.add(view2nd);
completeScrollView.add(mainScrollView);
win.add(completeScrollView);
},
onerror : function(e) {
alert('There was an error retrieving the remote data. Please check your internet cunnectivity.');
},
timeout : 45000
});
xhr.open("GET", url);
xhr.send();
image1.addEventListener('click', function(evt) {
Ti.API.info("image clicked");
var newWin = Ti.UI.createWindow({
url : '../automobileSubClass/carImageGallery.js',
title : nTitle,
tabBarHidden : true,
barColor : '#000000',
//navBarHidden : true,
backgroundImage : "../images/bg.png"
});
Titanium.UI.currentTab.open(newWin, {
animated : true
});
});
但是,如果我创建一个按钮来转到该网址然后按钮点击工作......但是当用户点击图片时我需要点击工作...请帮忙。感谢..
答案 0 :(得分:2)
试试这段代码吧。我已设置视图高度并删除了webservices以检查您的点击。它的工作正常。
//Titanium.include('commonFile.js');
var win = Ti.UI.currentWindow;
win.backgroundColor='black';
// var url = carsDetailUrl + nid;
var imageArea = Titanium.UI.createView({
width : 300,
top: 50,
backgroundColor:'white',
height : Ti.UI.SIZE,
borderRadius : 6
});
var image1 = Ti.UI.createImageView({
image : 'KS_nav_ui.png',
left : '8dp',
top : '10dp',
width : 135,
height : 106,
backgroundColor:'blue',
touchEnabled : 'true',
borderColor : '#000000',
borderRadius : 6,
borderWidth : 1,
});
var completeScrollView = Ti.UI.createScrollView({
top : '0dp',
left : '0dp',
contentWidth : 320,
touchEnabled : 'true',
borderRadius : 10,
// backgroundImage : '../images/bg.png',
showHorizontalScrollIndicator : false,
showVerticalScrollIndicator : false,
height : Ti.UI.SIZE
});
var mainScrollView = Ti.UI.createScrollView({
top : '0dp',
left : '0dp',
contentWidth : 320,
touchEnabled : 'true',
borderRadius : 10,
backgroundColor:'yellow',
// backgroundImage : '../images/bg.png',
showHorizontalScrollIndicator : false,
showVerticalScrollIndicator : false,
});
var viewDetail = Ti.UI.createView({
top : '10dp',
left : '10dp',
height : 'auto',
width : '94%',
touchEnabled : 'true',
borderRadius : 10,
backgroundColor : '#FFFFFF',
});
/*var image1 = Ti.UI.createImageView({
image : encodeURI(images[1]),
left : '8dp',
top : '10dp',
width : 135,
height : 106,
touchEnabled : 'true',
borderColor : '#000000',
borderRadius : 6,
borderWidth : 1,
});*/
var image2 = Ti.UI.createImageView({
image :'KS_nav_views.png',
left : '150dp',
top : '11dp',
width : '70dp',
height : '50dp',
backgroundColor:'green',
borderColor : '#000000',
borderRadius : 3,
borderWidth : 1,
});
viewDetail.add(imageArea);
imageArea.add(image1);
imageArea.add(image2);
mainScrollView.add(viewDetail);
// mainScrollView.add(view2nd);
completeScrollView.add(mainScrollView);
win.add(completeScrollView);
image1.addEventListener('click', function(evt) {
Ti.API.info("image clicked");
var newWin = Ti.UI.createWindow({
url : 'newWindow.js',
title : 'New Window',
tabBarHidden : true,
barColor : '#000000',
navBarHidden : true,
// backgroundImage : "../images/bg.png"
});
Titanium.UI.currentTab.open(newWin, {
animated : true
});