ボタンリスナーがあり、ユーザーがボタンをクリックすると、カメラの意図を開始したいと考えています。現時点で私はこれを持っています:
public class ButtonListener implements View.OnClickListener
{
private ArrayList<String> connectedItems;
private String identifier = null;
private Context context;
private EnteredValues enteredValues;
public ButtonListener(Context c, String identifier, ArrayList<String> 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 に渡しますか、それとも他のオプションがありますか?
多くのthx :)