动态按钮Android

问题描述:

我已经显示了一个动态创建的10键布局,现在我需要检索按钮的ID以释放必要的过程。这里的代码。动态按钮Android

Button Btn; 
Toast msg; 
RelativeLayout rl; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    this.setContentView(R.layout.main); 

    LinearLayout ll = (LinearLayout) findViewById(R.id.ll); 
    Btn = (Button) findViewById(R.id.Btntu); 

    for (int i = 0; i < 10; i++) { 
     Btn = new Button(this); 
     Btn.setText("Número: " + i); 
     Btn.setGravity(Gravity.CENTER); 
     Btn.setId(i); 

     rl = new RelativeLayout(this); 

     RelativeLayout.LayoutParams parametros = new RelativeLayout.LayoutParams(
     LayoutParams.WRAP_CONTENT, 
     LayoutParams.WRAP_CONTENT); 

     Btn.setLayoutParams(parametros); 

     rl.setLayoutParams(new LayoutParams(      
          LayoutParams.FILL_PARENT, 
          LayoutParams.WRAP_CONTENT) 
          ); 

     rl.addView(Btn); 
     ll.addView(rl); 
    } 

我需要的功能来检索按钮的ID。 谢谢大家。 :o)

你试过getId()

http://developer.android.com/reference/android/view/View.html#getId%28%29

for (int i = 0; i < 10; i++) { 
     Btn = new Button(this); 
     Btn.setText("Número: " + i); 
     Btn.setGravity(Gravity.CENTER); 
     Btn.setId(i); 
     Btn.setOnClickListener(new OnClickListener() { 
      public void onClick(View v) 
      { 
       Log.d("Button", "ID clicked: " + Btn.getId()); 
       // Or even 
       Log.d("View", "ID clicked: " + v.getId()); 
      } 
     }); 
     (...) 
}