정적 메서드를 작성 중이며 내부 메서드에서 변수에 액세스 할 때 문제가 발생합니다. 나는 이클립스에서 다음과 같은 오류를 받고 있어요 :외부 변수가 정의되어 있기 때문에 로컬 변수를 할당 할 수 없습니다.
그것이 바깥 쪽 형식 여기에 정의되어 있기 때문에 마지막 지역 변수의 RET가 할당 할 수 없습니다
내 코드입니다 :
public static boolean noInternetAlertDialog(Context ctx) {
final boolean ret;
AlertDialog.Builder builder;
builder = new AlertDialog.Builder(ctx);
builder.setCancelable(false);
builder.setTitle("Error");
builder.setMessage("Connection error");
builder.setPositiveButton("Retry", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which)
{
dialog.dismiss();
ret = false;
}
});
builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
ret = false;
}
});
AlertDialog dialog = builder.create();
dialog.show();
if (ret)
return true;
else
return false;
}
그냥 선언만으로 시도해보십시오 (즉, final boolean ret = false;) 내부 메소드에 설정하지 마십시오 – Martin
'final = boolean ret;가 아닌'ret = false; '에서이 오류가 발생합니다. ' – smartmouse
번호. 아래 답변을 참조하십시오 – Martin