コンパイラは、1 つのパラメーター ( phototag ) を受け入れ、そのパラメーター値に基づいて特定のフィールドの値を返す、 @Bindableとマークされた getter に関連するJavaBeans 規則に従う必要があるメソッドに関連付けられた @Bindableビルド例外をスローします。
private boolean operationPhotoSaved;
private boolean material1PhotoSaved;
private boolean material2PhotoSaved;
private boolean material3PhotoSaved;
private boolean material4PhotoSaved;
private boolean material5PhotoSaved;
@Bindable
public boolean isPhotoSaved (PhotoTag photoTag){
boolean isSaved = false;
switch (photoTag) {
case OPERATIONPHOTO:
isSaved = this.operationPhotoSaved;
break;
case MATERIAL1PHOTO:
isSaved = this.material1PhotoSaved;
break;
case MATERIAL2PHOTO:
isSaved = this.material2PhotoSaved;
break;
case MATERIAL3PHOTO:
isSaved = this.material3PhotoSaved;
break;
case MATERIAL4PHOTO:
isSaved = this.material4PhotoSaved;
break;
case MATERIAL5PHOTO:
isSaved = this.material5PhotoSaved;
break;
}
return isSaved;
}
これは Android のデータ バインディングでは許可されていないようです。