ここに含めたダミー サンプルとロジックが同じプログラムがあります。実行されない単純なものを試しましたwhile (1)
(少なくともUIは表示されません)。このサンプルは、while
ループを終了する によって変更される変数設定に基づいてループを実行しaddEventListener()
ます。ただし、 として機能しwhile (1)
ます。簡単に言えば、パスワードの入力を待って、それが一致することを確認する必要があります。そうでない場合は、ループを続けます。一致する場合、プログラムは別のループ (サンプルには示されていません) に進みます。このループは、プログラムが実行されている限り実行する必要があります。この 2 番目while
は、ユーザー入力に基づいていくつかの機能を実行します。ユーザー入力があるたびに、while
実行されます。別のスレッドを使用しないことを好みます。ループを作成するロジックはすべて同じように反応するようです。つまり、実行しないか、少なくとも目に見える実行はありません。別の言い方をすれば、なぜ機能しないのですwhile (1)
かfor (;;)
。任意の支援をいただければ幸いです。
//app.js
var debugText = Titanium.UI.createLabel({
top: 600,
left: 0,
width: 500,
height: 100,
color: '#777',
font:{fontSize:40},
hintText: 'debug text'
});
var entryCodeText = Titanium.UI.createTextField({
top: 300,
left: 0,
width: 400,
height: 100,
color: '#777',
font:{fontSize:40},
hintText: 'Enter Passcode'
});
//add labels and fields to window
win.add(entryCodeText);
win.add(debugText);
win.open();
while (exitCode == 0) {
// do stuff
} // end of exitCode while loop
// start of continuous program loop
while (1) {
// if no event, just continue loop
// if event , execute several functions and continue with loop
} // end of while(1) loop - runs as long as program runs
//*************************************************************************
entryCodeText.addEventListener("return", function(e) {
if (computeCode(entryCodeText.value)< 0) {
debugText.text = "failed computecode";
exitCode = 0;
continue;
} else {
debugText.text = "passed computeCode()";
exitCode = 1;
break;
}
});
//continue with other logic on break and exitCode = 1
//************************************************************
function computeCode(textValue) {
// do stuff to the textValue
}