我有一个带有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);
}
我对正确在这些行为之间来回传递信息的方式感到有些困惑。
谢谢!
答案 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();
}