我有通知菜单图标。我需要在 onCreateOptionsMenu()
时将其动画化已调用。
在实现过程中,我一直面临如下问题 -
Attempt to invoke virtual method 'void
android.view.View.setAnimation(android.view.animation.Animation)' on a
null object reference.
Java 代码:
private Animation animation;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.home_screen,menu);
animation =
AnimationUtils.loadAnimation(getApplicationContext(),R.anim.notify);
menu.findItem(R.id.notifications).getActionView().setAnimation(animation);
return super.onCreateOptionsMenu(menu);
}
home_screen.xml:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/notifications"
android:title="@string/action_settings"
app:showAsAction="ifRoom"
android:icon="@drawable/notifications"/>
</menu>
通知.xml:
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
android:toDegrees="180"
android:pivotX="50%"
android:pivotY="50%"
android:duration="500"
android:interpolator="@android:anim/accelerate_interpolator" />
请告诉我解决该问题的方法。 提前致谢。
最佳答案
关于java - 尝试在空对象引用上调用虚拟方法 'void android.view.View.setAnimation(android.view.animation.Animation)',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58762253/