Вызовите startActivityForResult из статического метода

У меня есть прослушиватель кнопок, и когда пользователь нажимает кнопку, я хочу начать работу камеры. На данный момент у меня есть это:

public class ButtonListener implements View.OnClickListener 
{
private ArrayList connectedItems;
private String identifier = null;
private Context context;
private EnteredValues enteredValues;

public ButtonListener(Context c, String identifier, ArrayList connectedItems) {
    this.connectedItems = connectedItems;
    this.identifier = identifier;
    this.context = c;
}

public void onClick(View v) {
    if (identifier.equals(ButtonItem.takePhoto)) {
        MainActivity.takePhoto();
    }

}

Теперь я хочу вызвать метод в моей mainActivity и там я хочу запустить startActivityForResult, но я получаю сообщение об ошибке "Вызвать startActivityForResult из статического метода.}

public class mainActivity extends Activity{
...
   public static void takePhoto(){
       startActivityForResult(new Intent(MediaStore.ACTION_IMAGE_CAPTURE));
          break;

       //Here I get the error..
   }

Как лучше всего решить эту проблему? передать объект mainActivity моему buttonListener или есть другие варианты?

Много спасибо :)

Ответы на вопрос(5)

Ваш ответ на вопрос