過去私がが作ってきたアプリを振り返るとWebAPIから取得したJSON形式のデータを1つづつ取り出して処理したりアプリケーション側のデータベースの機能を利用してキャッシュした情報からデータを1つづつ取り出してTableViewRowに追加していくような処理をすることが比較的多くありました。
作るアプリケーションによっては、他の制御文を利用するケースというのももちろんありますが、Titanium Mobileが得意とするWeb APIと連携するスマフォアプリ開発に限ればまずは
の2点をおさえておくことで、アプリケーション開発に取り組みやすくなるかと思ってます。
そこで、まずはサンプルコードを示しながらfor ループの使い方について解説をしていきます。
前回は、関数に渡す引数を以下のようにすることでI am Window1!!! や、I am Window2!!!というラベルが表示されるタブを2つ生成しました。
var tab1 = createTabElement('1!!!');
var tab2 = createTabElement('2!!!');
この処理を応用させて、forループを使ってI am Window1からI am Window5というラベルがそれぞれ表示される5つのタブを生成するようにしてみます。
var tabGroup,i,tab;
Titanium.UI.setBackgroundColor('#000');
tabGroup = Titanium.UI.createTabGroup();
for(i = 1; i < 6; i++){ //(1)
tab = createTabElement(i + '!!!'); // (2)
tabGroup.addTab(tab);
}
tabGroup.open();
function createTabElement(titleNumber){
var win,label;
win = Titanium.UI.createWindow({
title:"Tab" + titleNumber,
backgroundColor:'#fff'
});
label = Titanium.UI.createLabel({
color:'#999',
text:'I am Window' + titleNumber,
font:{fontSize:20,fontFamily:'Helvetica Neue'},
textAlign:'center',
width:'auto'
});
win.add(label);
var tab = Titanium.UI.createTab({
icon:'KS_nav_views.png',
title:"Tab" + titleNumber,
window:win
});
return tab;
};
上記実行すると、このようにタブが5つ生成されます。