こんにちは、これは単純で、私を逃しているだけだと確信しています:-)
フィールド配列で提供される値をチェックできるように、単純なヘルパー クラスを作成しています。フィールドは、正しい EditText ウィジェットであると言っています。私がしたいことは、EditText に入力された入力値にアクセスできるようにすることです。フィールド、助けてください。
Field[] fields = clazz.getFields();
for (Field field : fields) {
if (field.isAnnotationPresent(Required.class)) {
Log.d(TestClass.class.getName(), field.toString());
}
}
前もって感謝します
QUESTION の完全なコードに更新
package com.mobiqube.annotations;
import java.lang.reflect.Field;
import android.util.Log;
import android.widget.EditText;
public class EditTextValidator {
public EditTextValidator() {
}
public Boolean validate(Class clazz) throws IllegalArgumentException, IllegalAccessException{
Boolean isValid = true;
Field[] fields = clazz.getFields();
for (Field field : fields) {
if (field.isAnnotationPresent(Required.class)) {
Log.d(EditTextValidator.class.getName(), field.toString());
if(field instanceof EditText){
EditText editText = (EditText)field ;
String txt=editText.getText().toString();
Log.d(EditTextValidator.class.getName(), txt);
}
}
}
return isValid;
}
public String getMessage(){
String returnStr = "";
return returnStr;
}
}
現在発生しているエラー
if(field instanceof EditText){ //
および EditText editText = (EditText)field ;