我正在尝试使用GCM实现推送通知。在我收到广播的活动中,我想要一个菜单项,以便用户知道有些东西等待阅读。
我尝试了以下代码: -
Animation mAnimation = new AlphaAnimation(1, 0);
mAnimation.setDuration(200);
mAnimation.setInterpolator(new LinearInterpolator());
mAnimation.setRepeatCount(Animation.INFINITE);
mAnimation.setRepeatMode(Animation.REVERSE);
menuItem.startAnimation(mAnimation);
然而,最后一行给了我错误,它说“方法startAnimation是未定义的menuItem”,这是真的,因为我实现它为按钮所以我做了什么,我将它命名为查看和改变最后一行
((View) menuAlert).startAnimation(mAnimation);
然而它给了我类强制转换异常。如何让这个菜单闪烁。
LayoutInflater inflater = (LayoutInflater) getApplication()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
ImageView iv = (ImageView) inflater.inflate(R.layout.imagelayout,
null);
Animation rotation = AnimationUtils.loadAnimation(getApplication(),
R.anim.alert_rotate);
rotation.setRepeatCount(Animation.INFINITE);
rotation.setDuration(200);
iv.startAnimation(rotation);
menuAlert.setVisible(true);
menuAlert.setActionView(iv);
iv.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
menuAlert.getActionView().clearAnimation();
menuAlert.setActionView(null);
lbltitle.setTypeface(null, Typeface.BOLD);
lbltitle.setText(Html.fromHtml("<u>" +broadcastTitle +"</u>"));
lblMessage.loadData(broadcastMessage, "text/html", "UTF-8");
m.setVisible(false);
k.setVisible(false);
menuAlert.setVisible(false);
}
});
我做了一个资源布局,在那里我放了一个Imageview,然后我制作了一个动画资源进行轮换,然后我写了上面的代码,它确实有效。
答案 0 :(得分:1)
检查一下。
MenuItem item = menu.findItem(R.id.action_settings);
ImageView imgView = new ImageView(this);
imgView.setBackground(getResources().getDrawable(R.drawable.ic_launcher));
item.setActionView(imgView);
imgView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(HorizontalScrollView.this, "onCLicked imgView", Toast.LENGTH_SHORT).show();
Animation mAnimation = new AlphaAnimation(1, 0);
mAnimation.setDuration(200);
mAnimation.setInterpolator(new LinearInterpolator());
mAnimation.setRepeatCount(Animation.INFINITE);
mAnimation.setRepeatMode(Animation.REVERSE);
MenuItem item = menu.findItem(R.id.action_settings);
item.getActionView().startAnimation(mAnimation);
}
});