次のように、関数のネストされたクラス内から変数を返そうとしています:
public int getPlan(int planID) {
int planId;
TableOperationCallback<Plans> callback = new TableOperationCallback<Plans>() {
public void onCompleted(Plans plan, Exception exception,ServiceFilterResponse response) {
if(exception == null){
int planId = (int) db.addPlan(plan); //Want to return this value
} else {
Log.e(exception.getMessage(), "ERROR");
}
}
};
mPlanTable.lookUp(planID, callback);
return planId;
}
このメソッドは Azure Android SDK とリンクされており、mPlanTable.lookUp() は非同期で呼び出されます。そのため、planId
上記のコードでは null が返されることがあります。
実際の値を返す最良の方法は何ですか?