0

我有 6 个对象按钮

kartu1 = (Button)findViewById(R.id.kartu1);
kartu2 = (Button)findViewById(R.id.kartu2);
kartu3 = (Button)findViewById(R.id.kartu3);
kartu4 = (Button)findViewById(R.id.kartu4);
kartu5 = (Button)findViewById(R.id.kartu5);
kartu6 = (Button)findViewById(R.id.kartu6);

所有这些对象都设置为 OnclickListener

       kartu1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
        r = new Random();
        int i = r.nextInt(gamb.size());
        v.setBackgroundDrawable(gamb.get(i));
        }
    });

我想将所有对象设为整数,因为有一个条件可以计算所有对象。我有一个条件。

if (kartu1 >= 5){

}   

如何将 kartu1 更改为整数?

4

1 回答 1

1

尝试这个

int[] ids={R.id.kartu1 ,R.id.kartu2, R.id.kartu3, R.id.kartu4, R.id.kartu5,R.id.kartu6  };
int clicks=0;
for(int i=0;i<ids.length;i++)
{
Button b=(Button)findViewById(R.id.kartu1);
b.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
        r = new Random();
        int i = r.nextInt(gamb.size());
        v.setBackgroundDrawable(gamb.get(i));
        // set the click count in variable
         clicks+=1;

         if(clicks>=5){
            // do stuff here
          }              
        }
    });
}

第二种情况。

以上假设所有图片的总点击次数为 5

如果您想将单个按钮的点击次数设置为 5,请这样做

 public void onClick(View v) {
            r = new Random();
            int i = r.nextInt(gamb.size());
            v.setBackgroundDrawable(gamb.get(i));
            // set the click count in variable
            String count=b.getContentDescription();
             if(count!=null && count.length()!=0)
             {
                 int cnt=Integer.parseInt(count);
                  cnt+=1;
             button.setContentDescription(String.valueOf(cnt));
              if(cnt>=5)
            {
               // do stuff here
            }
              }  
              else
              {
                button.setContentDescription(String.valueOf(1));
               }

            }
于 2013-04-19T17:09:02.267 回答