gpt4 book ai didi

android - FloatingActionButton 在点击按钮本身时旋转

转载 作者:行者123 更新时间:2023-11-29 01:29:51 29 4
gpt4 key购买 nike

我正在使用 FloatingActionButtonOnClick。我想显示 PopupMenu 并使用漂亮的动画(旋转 90 度)旋转相同的 FAB 按钮。

enter image description here

点击时,它应该自己动画:

enter image description here

我能够在其 OnClick 方法上显示一个 PopupMenu,但我无法旋转 FAB 自身。事实上,我能够为它周围的所有其他 FloatingActionButton 制作动画,但我尝试过没有一个 FloatingActionButton 可以为它自己制作动画 OnClick 方法。

我也尝试过不使用 FloatingActionButton,而是使用一个可以使自身动画(旋转)的简单按钮。

public class FloatingButtonPanel extends Fragment {

//.... Other code...
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {


//.... Other code...
final FloatingActionButton butA = (FloatingActionButton) view.findViewById(R.id.fb_menu);

butA.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
rotateAnimation(v);
}
});

return view;
}
public static void rotateAnimation(View v){
// Create an animation instance
final Animation an = new RotateAnimation(0, 90, v.getWidth()/2, v.getHeight()/2);
an.setDuration(1000);
an.setFillAfter(true);
v.clearAnimation();
v.startAnimation(an);
}
}

有人能帮忙吗?

最佳答案

首先,永远不要按照 Google 尝试在 FloatingActionButton(FAB) 选项菜单中显示 Over flow 菜单设计。

Second Thing Fab 只是一个 ImageView 。所以像其他图像一样,您可以使用 Matrix 旋转它

    Matrix matrix = new Matrix();
FloatingActionButton fab=new FloatingActionButton(this);
fab.setScaleType(ImageView.ScaleType.MATRIX); //required
matrix.postRotate((float) angle, pivX, pivY);
fab.setImageMatrix(matrix);

您可以继续 Animators隐藏和显示选项菜单。

关于android - FloatingActionButton 在点击按钮本身时旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31794826/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com