Android 涟漪效应方向问题

Android 涟漪效应方向问题,android,animation,layout,ripple,rippledrawable,Android,Animation,Layout,Ripple,Rippledrawable,当我触摸布局的边框(以RippledRavable为背景的线性布局)时,涟漪效果不会从单击的点开始,而是从中开始 波纹也会传播到中心 RippleDrawable drawable=新的RippleDrawable(ColorStateList.valueOf(pressedColor),null,getRippleMask(baseColor)); 本工程为退耕地(可拉深); 我还尝试使用setHotspot方法,使用as坐标(0,0),但它不从左上角点开始。尝试此方法可能对您有用 priv

当我触摸布局的边框(以RippledRavable为背景的线性布局)时,涟漪效果不会从单击的点开始,而是从中开始 波纹也会传播到中心

RippleDrawable drawable=新的RippleDrawable(ColorStateList.valueOf(pressedColor),null,getRippleMask(baseColor));
本工程为退耕地(可拉深);


我还尝试使用
setHotspot
方法,使用as坐标(0,0),但它不从左上角点开始。

尝试此方法可能对您有用

private void startRippleAnimation(View v, float x, float y){
   Drawable background = v.getBackground();
   if(background instanceof RippleDrawable){
     RippleDrawable ripple = (RippleDrawable)background;
     ripple.setHotspot(x, y);
     ripple.setVisible (true, true);
   }

}

试试这个方法也许对你有用

private void startRippleAnimation(View v, float x, float y){
   Drawable background = v.getBackground();
   if(background instanceof RippleDrawable){
     RippleDrawable ripple = (RippleDrawable)background;
     ripple.setHotspot(x, y);
     ripple.setVisible (true, true);
   }

}

使用方法
sethospotbound(x,y,x,y)
sethospotbound(x,y)
之前解决
sethospotbound(x,y)

使用方法
sethospotbound(x,y,y)
sethospotbound(x,y)
之前解决请解释您到底想做什么。你想让涟漪从左上角开始,而不管用户触到
视图的位置是什么?
?不,我想让涟漪效果从用户触到视图的位置开始。这是默认行为。你一定做了一些非常错误的事情来破坏这一点,但是没有看到代码的相关部分,没有人能帮助你。请解释你到底想做什么。你想让涟漪从左上角开始,而不管用户触到
视图的位置是什么?
?不,我想让涟漪效果从用户触到视图的位置开始。这是默认行为。你一定做了一些非常错误的事情来打破这一点,但是没有看到代码的相关部分,没有人可以帮助你。它从我想要的地方开始,但是动画到中心,而不是线性循环传播它从我想要的地方开始,但是动画到中心,而不是线性循环传播