我有一个 ActionBar 图标,它是一个聊天消息屏幕的按钮。我有两个图标副本。一种标准灰色,一种黄色。
当我显示黄色图标表示有消息等待时,我希望它缓慢闪烁。
这可以通过操作栏图标实现吗?
我有一个 ActionBar 图标,它是一个聊天消息屏幕的按钮。我有两个图标副本。一种标准灰色,一种黄色。
当我显示黄色图标表示有消息等待时,我希望它缓慢闪烁。
这可以通过操作栏图标实现吗?
您可以尝试使用 MenuItem 的setIcon方法。由于它需要一个 Drawable,因此您可以使用AnimationDrawable来实现慢闪效果。
我可能以一种狡猾的方式做到了这一点,因为我对 Android 还是很陌生,但也许它会帮助某人/某人会纠正我。
我有一个 500 毫秒的计时器,它定期执行运行“invalidateOptionsMenu();” 这将导致菜单被重绘,一旦发生这种情况,您只需在里面隐藏/显示您的图标,下面我正在闪烁一个“无信号”图标。只需将您的计时器设置为您想要的任何闪光时间。
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
getMenuInflater().inflate(R.menu.menu, menu);
if(!AppStates.InternetAvailable || !AppStates.ServerContactable)
{
if(!NoSignalFlashState) NoSignalFlashState=true;
else NoSignalFlashState=false;
menu.findItem(R.id.ActionNoSignal).setVisible(NoSignalFlashState);
}
else menu.findItem(R.id.ActionNoSignal).setVisible(false);
super.onCreateOptionsMenu(menu);
return true;
}