Android 将外部参数传递给自定义视图

Android 将外部参数传递给自定义视图,android,android-animation,subclass,android-custom-view,Android,Android Animation,Subclass,Android Custom View,我刚开始画画、画布、基本动画,但偶然发现了这个恼人的问题: 我有自己的看法 public class CustomView extends View{ // //Edited code **************************** bool dir; // true -- right-to-left, false -- left-to-right public void setDirection(bool b) this.bool =

我刚开始画画、画布、基本动画,但偶然发现了这个恼人的问题:

我有自己的看法

public class CustomView extends View{
   //

   //Edited code ****************************
   bool dir;    // true -- right-to-left, false -- left-to-right

   public void setDirection(bool b)
       this.bool = b 

   // ****************************************


   public CustomView(Context context) {
     super(context);
     ...
   }
   public CustomView(Context context, AttributeSet attrs) {
      super(context, attrs)
    ...
   }
   ...

   //stuff for animation
   protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);
   ...
  }
  ...
在里面我制作了一个小动画,基本上是从右到左一次又一次的飞行

现在,假设我想在我的布局中有两个这样的视图。但在第二种情况下,物体应该从左向右飞行

是否可以通过某种方式将此参数传递给自定义视图?或者我真的必须创建完全相同的类,并将加号更改为减号,从而使其成为一个新类。这意味着通过扩展视图创建的动画根本不可调

如果是后者,那么有没有更好的方法来调整动画

是否可以通过某种方式将此参数传递给自定义视图

步骤1:将字段添加到自定义视图以保存动画

步骤2:添加setter方法来填充字段


步骤3:从“活动”、“片段”等调用setter方法,告诉它要使用什么动画

Hi,感谢您的快速响应。你能看一下我编辑的代码,告诉我这是不是你的意思吗?@Marsl:这是一个字段和字段的setter方法。只要您调用setDirection来教给给定的CustomView使用哪个方向,只要您在CustomView中使用dir来控制其行为,您就应该拥有您想要的。