Android编码概念:AlertDialog为Activity?

时间:2012-11-28 19:47:02

标签: android coding-style android-activity android-alertdialog

如果我想从我的MainActivity启动一个AlertDialog,它应该是一个Activity本身(因为我需要将信息从AlertDialog传递回MainActivity),通常的编码概念是什么?我是否必须在DialogActivity或Activity中扩展Dialog?我不确定对话框本身应该是Activity还是Activity应该以某种方式调用AlertDialog?你能给我一个提示吗。

我的主要问题是我总共有3个AlertDialogs,最后2个取决于第一个AlertDialog的选择(因此调用nr2或nr3)。我必须将最后一个对话框中的信息传递回MainActivity,所以我认为唯一干净的方法是通过不同的活动来解决这个问题。

[UPDATE]
解决方案是创建不同的活动,看起来像对话框(请参阅接受的答案)。下一个问题是将一些数据从活动A传递到B到C,结果返回到A.使用Intents非常容易。
A: startActivityForResult(...)
B: startActivity(...); addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
C: setResult(...)
A:从onActivityResult(...)获取数据

2 个答案:

答案 0 :(得分:0)

有一个对话框主题可用于显示对话框等活动。

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

结合startActivityForResult()和setResult(),你应该可以创建你想要的东西。

答案 1 :(得分:0)

我认为首选模式是使用dialogfragment