刚刚学android,有一段代码是:AnimationUtils.loadAnimation(this,R.anim.alpha),
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了刚刚学android,有一段代码是:AnimationUtils.loadAnimation(this,R.anim.alpha),相关的知识,希望对你有一定的参考价值。
这里AnimationUtils为什么可以直接调用它的函数,不是应该要new出一个对象,然后再调用的吗。希望各位能帮我解答下。
loadAnimation()方法是AnimationUtils类的静态方法。可以通过“类名.方法名()”的方式调用,需要new一个对象出来的再调用的是实例方法。静态方法是使用公共内存空间的,就是说所有对象都可以直接引用,不需要创建对象再使用该方法。实例方法是使用new开辟出来的内存空间的,只能当前对象使用。 参考技术A Animation a = AnimationUtils.loadAnimation(this,R.anim.alpha);
是Animation调用AnimationUtils里面的功能,所以不用new对象,AniamtionUtils是Animation的子类,直接给Animation调用 参考技术B 静态方法可以直接调用 方法使用static声明的,这是java范畴,源码如下:
public static Animation loadAnimation(Context context, int id)
throws NotFoundException
XmlResourceParser parser = null;
try
parser = context.getResources().getAnimation(id);
return createAnimationFromXml(context, parser);
catch (XmlPullParserException ex)
NotFoundException rnf = new NotFoundException("Can't load animation resource ID #0x" +
Integer.toHexString(id));
rnf.initCause(ex);
throw rnf;
catch (IOException ex)
NotFoundException rnf = new NotFoundException("Can't load animation resource ID #0x" +
Integer.toHexString(id));
rnf.initCause(ex);
throw rnf;
finally
if (parser != null) parser.close();
以上是关于刚刚学android,有一段代码是:AnimationUtils.loadAnimation(this,R.anim.alpha),的主要内容,如果未能解决你的问题,请参考以下文章
菜鸟刚刚学android。怎么让android分别响应按下和弹起的事件?跪求高手~~~~