Android - 游戏线程和对话

时间:2012-02-07 03:10:25

标签: android android-activity dialog panel

我有一个带有ViewThread的Android游戏和一个使用onTouchEvent的Panel。在触发Panel的onTouchEvent并将结果信息传回底层代码时,调用父Activity的'showDialog'方法的最佳方法是什么?

例如,在我的小组中,我有以下内容:

@Override
public boolean onTouchEvent(MotionEvent event) {
    int todo = map.click(event.getX(), event.getY());
    //If a valid square was clicked, lets popup a dialog
    if(todo == 1){
        //Activity.showDialog(1); -- Callback method or 'event' I can use to trigger?
        //map.updateWithDialogChoice(DialogResult) // How to access result from Dialog
    }
    return super.onTouchEvent(event);
}

我对正确在这些行为之间来回传递信息的方式感到有些困惑。

谢谢!

1 个答案:

答案 0 :(得分:2)

您可以从父活动传递上下文

例如

showLongMessage(myclass.this, returnMsg);

这是showLongMessage方法......

public static void showLongMessage(Context ctxtform, CharSequence message) {
    new AlertDialog.Builder(ctxtform)

    .setTitle(Modules.AgentName)

    .setMessage(message)

    .setIcon(R.drawable.icon_alert)

    .setPositiveButton("OK", new DialogInterface.OnClickListener() {

        public void onClick(DialogInterface dialog, int whichButton)

        {

        }
    }).show();
}