私は Adobe Air (AS Document クラス) を使用して Android アプリケーションに取り組んでおり、SqlLite データベースから文字列の配列として SQLLite ResultSetb を取得し、リストを反復処理し、反復ごとに TextField を作成する関数を持っています。それらをステージに追加します。
ユーザーが特定の TextField をタップすると、データベースから削除されます。イベントをキャプチャするために、各 TextField に TouchEvent リスナーを実装しましたが、イベント リスナーからタップされた TextField を特定する方法がわかりません。
私のコードは次のとおりです。
function displayNumbers(allNumbers:Array){
var y:int=20;
var telNo:String;
for(var i:int=0; i<allNumbers.length; i++){
telNo = allNumbers[i];
var myText:TextField = new TextField();
myText.text="text"+i;
myText.addEventListener( TouchEvent.TOUCH_TAP,doDelNo);
myText.x= 20;
myText.y=y;
stage.addChild(myText);
y+=25;
}
}
doDelNo EventListener コードを以下に示します。
function doDelNo(e:MouseEvent):void{
var telNo:String = myText.text; //This is where the problem is
delNo(telNo);
}
問題は関数 "doDelNo" の 2 行目です。タップされた TextField のインスタンスを取得できないようです。ActionScript は、2 行目で「未定義のプロパティ myText へのアクセス」というエラーをスローしています。
誰かが私を正しい方向に向けるのを手伝ってくれたら、とても感謝しています。