-1

のコールバックを登録したいのですdialog.setOnCancelListener ( OnCancelListener)が、このコールバックは他のダイアログに何度も登録されます。そのため、渡されたダイアログから別の余分な日付を持つ一意の日付を取得して、どれが有用か役に立たないかを知る必要があります。

4

1 に答える 1

0

インターフェイスを使用して、次のコードをダイアログ Fragmnet に追加します。}

private MyInterface mListener;

@Override
public void onAttach(Activity activity) {
    mListener = (MyInterface) activity;
    super.onAttach(activity);
}

@Override
public void onDetach() {
    mListener = null;
    super.onDetach();
}

次に、onCancel メソッドで次のようにします。

@Override
public void onCancel(DialogInterface dialog) {
    // TODO Auto-generated method stub
    super.onCancel(dialog);
            //This line passes the String to the implementing class
            mListener.onChoose(choice);
}

クラスに戻る:

public class MainActivity extends Activity implements MyInterface {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.activity_main);
}

public void onChoose(String myExtraData) {
    //Do stuff here
}
于 2012-12-06T05:18:00.747 に答える