从单独的Dialog类将Dialog的单击侦听器获取到我的Activity中 [英] Get Dialog's on click listener into my Activity from separate Dialog class
本文介绍了从单独的Dialog类将Dialog的单击侦听器获取到我的Activity中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个Dialog类,其中保存了对话框。现在的问题是,我想在活动中重新获取对话框的查看单击侦听器。我知道可以通过编写界面来完成此操作,但是还有其他OOP方式吗?
I have a Dialog class where I have kept my dialogs. Now the problem is that I want to get the View click listeners of my dialog back in my activity. I know this can be done by writing an interface but is there any other OOP way of doing it?
我的对话框类:
public class Dialogs{
public void testCompletionDialog() {
final Dialog dialog = new Dialog(context);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setCancelable(true);
dialog.setContentView(R.layout.test_complete_dialog);
dialog.setTitle("Ratta provet?");
dialog.findViewById(R.id.lesson_btn_marker).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//I want my activity to know that this view is clicked.
dialog.dismiss();
}
});
dialog.findViewById(R.id.lesson_btn_ratta).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//I want my activity to know that this view is clicked.
}
});
dialog.show();
}
}
我的活动:
if (areQueOver) {
Dialogs dialogs=new Dialogs(TestActivity.this);
dialogs.testCompletionDialog();
}
推荐答案
是的,如果您想打电话任何Actvity方法都可以通过Activity的上下文进行调用:
Yes if you want to call any method of Actvity then you can call through context of Activity :
假设method1()在Activity下,并且您想从Dailog进行调用,则可以通过进行调用。
suppose method1() is under Activity and you want to call from Dailog then you can call through .
((MyActivity)((Activity)context)).method1();
这篇关于从单独的Dialog类将Dialog的单击侦听器获取到我的Activity中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文