0
Androidスタジオでアンドロイド用のアプリケーションを開発しています。たとえば、HTTPリクエストなどの非同期メソッドに情報を渡す方が、以下のいずれの方が良いか疑問に思っています。アンドロイドの非同期メソッドに情報を渡す最も良い方法は何ですか?
まず方法:私は、一例として、警告ダイアログを使用し、最終的なようにパラメータを宣言します。
final String par1 = "Test";
DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch (which){
case DialogInterface.BUTTON_POSITIVE:
//Yes button clicked
doSomething(par1);
break;
case DialogInterface.BUTTON_NEGATIVE:
//No button clicked
break;
}
}
};
AlertDialog.Builder builder = new AlertDialog.Builder(
MainActivity.getCurrentInstance().getApplicationContext()
);
builder.setMessage("confirm the operation?")
.setPositiveButton("Yes", dialogClickListener)
.setNegativeButton("No", dialogClickListener).show();
第二の方法:私は、特定の恐怖を持って
MyOnClickListener dialogClickListener = new MyOnClickListener("test") {
@Override
public void onClick(DialogInterface dialog, int which) {
switch (which){
case DialogInterface.BUTTON_POSITIVE:
//Yes button clicked
doSomething(this.getParameterValue());
break;
case DialogInterface.BUTTON_NEGATIVE:
//No button clicked
break;
}
}
};
AlertDialog.Builder builder = new AlertDialog.Builder(
MainActivity.getCurrentInstance().getApplicationContext()
);
builder.setMessage("confirm the operation?")
.setPositiveButton("Yes", dialogClickListener)
.setNegativeButton("No", dialogClickListener).show();
:リスナーのコンストラクタに渡しますグローバル変数の一種であるための最初の方法。