我目前正在开发一个可以管理纸牌游戏的Android应用程序。我有(比方说)4个玩家,在每一轮之后,我点击一个按钮,打开一个对话框,输入玩家在这一轮中的得分。如何在打开的对话框中实现这一点?我尝试了几种方法,例如对话框中的ViewFlipper,到目前为止都不起作用。例如,ViewFlipper没有机会转到下一个视图,因为当我点击OK按钮时,对话框已经再次关闭。
发布于 2012-07-08 18:13:27
您可以使用具有对话框的外观和感觉的活动来代替对话框。要实现这一点,请将以下内容添加到活动定义中:
<activity android:theme="@android:style/Theme.Dialog" />在Android Manifest.xml的<Application>标签中。
编辑要在您的活动和对话UI活动之间来回传递数据,您可以使用Intents。例如,假设您想要将一个String从CustomActivity传递给DialogActivity。CustomActivity的代码为:
Intent i = new Intent(getApplicationContext(), DialogActivity.class);
i.putExtra("your_variable_name","value");
startActivity(i);然后在您的DialogActivity中访问您将使用的数据:
Bundle extras = getIntent().getExtras();
if (extras != null) {
String variable_value = extras.getString("your_variable_name");
}当你想要从你的DialogActivity向你的CustomActivity发送数据时,同样的逻辑也是如此。
您也可以使用startActivityForResult和onActivityResult方法来完成此操作。有关这两种方法的详细信息,请参阅here。
https://stackoverflow.com/questions/11382231
复制相似问题