我正在尝试创建一个可以像对话框一样使用的Activity。 我的Activity有一个对话框主题,因此它具有对话感觉。 在我的布局中,我添加了一个TextView,用于显示消息,以及三个按钮(正面,负面,中性)。要显示的文本消息在Intent中作为额外消息传递。 Button名称也是如此。我隐藏了在intent-extras中传递了空字符串的按钮。这几乎实现了对话框的行为,除了我不知道如何实现按钮单击侦听器。
有什么想法吗?
答案 0 :(得分:1)
如果您的布局在XML文件中,您可以为您的按钮添加onClick="onMyButtonClick"
之类的内容,然后在代码中添加
public void onMyButtonClick(View sender) { ... }
另外,您可以使用onCreate()
Button myButton = (Button)findViewById(R.id.my_button);
myButton.setOnClickListener(new OnClickListener() { ... });
我想你想要从某个地方的onCLickListener调用finish()
,也许与setResult()
答案 1 :(得分:1)
这很简单:
你应该通过startActivityForResult(Intent, requestCode);
开始对话
并覆盖方法onActivityResult(int requestCode,int resultCode,Intent data)以获取对话活动的结果。
每个对话框按钮都必须调用setResult()
而不是完成它。如果你传递了resultCode和数据,你将返回方法onActivityResult中的主要活动。