1

我目前正在开发一个可以管理纸牌游戏的 Android 应用程序。我有(比方说)4 名球员,在每一轮之后,我点击一个按钮,打开一个对话框,输入这一轮球员的得分。如何在打开的对话框中实现这一点?我尝试了几件事,例如对话框中的 ViewFlipper,到目前为止都没有工作。例如,ViewFlipper 没有机会进入下一个视图,因为当我点击 OK 按钮时对话框已经再次关闭。

4

1 回答 1

1

您可以使用具有对话框外观的 Activity 来代替对话框。要实现这一点,请将其添加到您的 Activity 定义中:

<activity android:theme="@android:style/Theme.Dialog" />

<Application>在 Android的标签内Manifest.xml

编辑要在您的活动和对话框 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 时,同样的逻辑也是如此。

您也可以使用startActivityForResultonActivityResult方法来做到这一点。有关这两种方法的更多信息,请参见此处

于 2012-07-08T10:13:26.593 回答