JSON 응답에서 반환 된 새 데이터로 win1.title (레이블)을 업데이트해야합니다. 내 콘솔 win1.title 값에 인쇄 할 수 있지만 새 값을 할당 할 수 없습니다!현재 창에서 텍스트 레이블을 업데이트하는 방법
는
var win1 = Titanium.UI.createWindow({
title:'Tab 1',
backgroundColor: 'black',
layout: 'vertical',
url: 'win1.js',
title: 'Loading...',
artist: '' });
win1.open();
//Fetching data
var jsonData = ''; var pointer = 0;
var url = "http://example.com"; var xhr = Ti.Network.createHTTPClient({
onload: function(e) {
jsonData = JSON.parse(this.responseText).response.songs;
//HERE I NEED TO UPDATE win1.title with title returned by JSON
/*
if a print win1.title it works correctly.
console.log(win1.title);
but if I try to assign data to win1.title nothing happens, even a error!
*/
win1.addEventListener('swipe', function(e) {
console.log("win1 title:" + win1.title); win1.title = jsonData[pointer].title; win1.artist = jsonData[pointer].artist_name; win1.image = jsonData[pointer].tracks[0].release_image;
});
},
onerror: function(e) {
console.log(e);
},
timeout:20000 /* in milliseconds */ }); xhr.open("GET", url); xhr.send(); // request is actually sent with this statement
app.js win1.title = 'some title';
는 당신이이 경우 것입니다 생각하지 않을 것입니다 설정
(function() {
var win1 = Ti.UI.currentWindow;
var image = Ti.UI.createImageView({
image:win1.image,
top: 40
});
var title = Ti.UI.createLabel({
color: 'white',
font: { fontSize:38 },
text: win1.title,
textAlign: Ti.UI.TEXT_ALIGNMENT_CENTER,
top: 20,
width: 'auto', height: 'auto'
});
var artist = Ti.UI.createLabel({
color: 'white',
font: { fontSize:28 },
text: win1.artist,
textAlign: Ti.UI.TEXT_ALIGNMENT_CENTER,
top: 30,
width: 'auto', height: 'auto'
});
win1.add(title);
win1.add(artist);
win1.add(image);
})();
CommonJS (따라서 훌륭한 아키텍처)의 중요성을 강조하기 위해 선정되었습니다. –