Android自定义观察者
我寻找观察者和可观察类(接口),但我需要创建一些更通用的类 例如,如果我要构建一个可观察的Paint类,我应该覆盖许多方法。。我不要这个 我想可能可以创建一个自定义的观察者,它保存类的所有方法结果,并在调用Android自定义观察者,android,observers,Android,Observers,我寻找观察者和可观察类(接口),但我需要创建一些更通用的类 例如,如果我要构建一个可观察的Paint类,我应该覆盖许多方法。。我不要这个 我想可能可以创建一个自定义的观察者,它保存类的所有方法结果,并在调用isChanged()后返回状态(true或false),比较旧值和当前值 以下代码方法可用于检索泛型类内的所有方法: // Found on http://stackoverflow.com/ public static Method[] getAccessibleMethods(Class
isChanged()
后返回状态(true
或false
),比较旧值和当前值
以下代码方法可用于检索泛型类内的所有方法:
// Found on http://stackoverflow.com/
public static Method[] getAccessibleMethods(Class clazz) {
List<Method> result = new ArrayList<Method>();
while (clazz != null) {
for (Method method : clazz.getDeclaredMethods()) {
int modifiers = method.getModifiers();
if (Modifier.isPublic(modifiers) || Modifier.isProtected(modifiers)) {
result.add(method);
}
}
clazz = clazz.getSuperclass();
}
return result.toArray(new Method[result.size()]);
}
//在上找到http://stackoverflow.com/
公共静态方法[]getAccessibleMethods(类clazz){
列表结果=新建ArrayList();
while(clazz!=null){
for(方法:clazz.getDeclaredMethods()){
int modifiers=method.getModifiers();
if(修饰符.isPublic(修饰符)| |修饰符.isProtected(修饰符)){
结果:添加(方法);
}
}
clazz=clazz.getSuperclass();
}
返回result.toArray(新方法[result.size()]);
}
一旦我们列出了方法,我们就可以调用每个方法并将结果存储在一个通用数组中。
当我们需要检查一些更改时,我们可以刷新所有结果并与旧的结果进行比较
所以,问题是:是否有可能创建这种定制的观察者,或者有一种有效的替代方法(或者已经做了什么)
很明显,我们只能调用具有确定特征的方法:-无参数方法
-没有返回void的方法