属性动画最终是通过调用对象属性的set方法来修改属性的,那这个set方法的命名方式有没有特别要求?
Android/Sdk/sources/android-28/android/animation/PropertyValuesHolder.java
/**
* Utility method to derive a setter/getter method name from a property name, where the
* prefix is typically "set" or "get" and the first letter of the property name is
* capitalized.
*
* @param prefix The precursor to the method name, before the property name begins, typically
* "set" or "get".
* @param propertyName The name of the property that represents the bulk of the method name
* after the prefix. The first letter of this word will be capitalized in the resulting
* method name.
* @return String the property name converted to a method name according to the conventions
* specified above.
*/
static String getMethodName(String prefix, String propertyName) {
if (propertyName == null || propertyName.length() == 0) {
// shouldn't get here
return prefix;
}
char firstLetter = Character.toUpperCase(propertyName.charAt(0));
String theRest = propertyName.substring(1);
return prefix + firstLetter + theRest;
}
方法名称的获取如上在PropertyValuesHolder中定义。可以看到是set/get和属性名称拼接而成,属性名称首字母大写。