Android:将资源ID作为参数传递

时间:2012-09-03 13:53:22

标签: android android-resources

我有这段代码:

translateRight("iv1"); //iv1 is an id of an imageView

    private void translateRight(String st){

    ImageView img = (ImageView)findViewById(R.id.st);
        Animation a = AnimationUtils.loadAnimation(this, R.anim.translate_right);
        img.startAnimation(a);
    }

我有“translateRight”这是一个显示动画的方法,但是在这个方法中我应该传递一个资源ID;我尝试使用字符串,但它不起作用,我该怎么办?

4 个答案:

答案 0 :(得分:13)

资源ID - 是一个整数值。只需传递int

private void translateRight(int resource){
    ImageView img = (ImageView) findViewById(resource);
    //stuff
}

答案 1 :(得分:5)

资源ID是整数,而不是字符串。

答案 2 :(得分:1)

  1. 第二种方法是直接传递findViewById

    boolean tvStatus = status((CheckBox)findViewById(R.id.vn));

      public boolean status(CheckBox ch)
         {
    
             boolean ll=ch.isChecked() ;
             return  ll;
         }
    

答案 3 :(得分:0)

我认为可能有两种方法可以做到这一点。

  1. 在方法中传递id名称。

这里的状态是方法,id_name是您的ID的名称(可以是任何东西)

您将如何收到此邮件?

 // This is how you call the method
 status(R.id.id_name)

 public boolean status(int id)
    {
      CheckBox ch = findViewById(id);
      boolean = ch.isChecked();
      return s;
    }

希望有帮助...