Android 将onClickListener附加到容器内的所有按钮

Android 将onClickListener附加到容器内的所有按钮,android,onclicklistener,Android,Onclicklistener,懒惰的问题= 我有一个充满按钮的XML布局,除了按钮之外,没有其他视图对象。如何将一个侦听器连接到所有按钮,而不必将行android:onClick粘贴到每个按钮上 ViewGroup yourLayout = ...; View.OnClickListener ocl = ...; for(int i=0; i<yourLayout.getChildCount(); i++) if(yourLayout.getChildAt(i) instanceof Button)

懒惰的问题=

我有一个充满按钮的XML布局,除了按钮之外,没有其他视图对象。如何将一个侦听器连接到所有按钮,而不必将行android:onClick粘贴到每个按钮上

ViewGroup yourLayout = ...;
View.OnClickListener ocl = ...;
for(int i=0; i<yourLayout.getChildCount(); i++)
    if(yourLayout.getChildAt(i) instanceof Button)
        yourLayout.getChildAt(i).setOnClickListener(ocl);
视图组可以是线性布局、相对布局或其他-主要是:带有按钮的容器

视图组可以是线性布局、相对布局或其他-主要是:带有按钮的容器

public class YourActivity extends Activity implements OnClickListener{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_your);
        ....
        btnA.setOnClickListener(this);
        btnB.setOnClickListener(this);
        btnC.setOnClickListener(this);
     }
    @Override
    public void onClick(View v) {
     //do your stuff here
    }

}