我正在尝试整理我的代码,以便我可以轻松地重用元素,而不必重复工作/代码。
我有一个联系人选择器和代码来处理我想放入其自己的外部类的应用程序中的结果,以便我可以在多个区域重用它。
我遇到了一个问题——为了调用 StartActivityforResult,我需要将活动传递给外部类——但是我不知道该怎么做?
这是我用作外部联系人选择器的类:
public class ContactFinder {
private static final int CONTACT_PICKER_RESULT = 1001;
private Activity atv;
public ContactFinder(Activity atv) {
this.atv=atv;
}
public void startContactPicker()
{
Intent contactPickerIntent=new Intent(Intent.ACTION_PICK,ContactsContract.CommonDataKinds.Phone.CONTENT_URI);
//Shows CONTACT_PICKER_RESULT cannot be resolved to a variable
atv.startActivityForResult(contactPickerIntent, CONTACT_PICKER_RESULT);
}
}
那么我将如何使用以下命令从我的主要活动中调用它:
ContactFinder cf=new ContactFinder(???));// how do I pass the activity to this external class
cf.startContactPicker();