Reputation:
I want use ButterKnife
in my Project. I use many EditText
and for initialize this editTexts
I use this code :
@BindView(R.id.registerCountryEdtTxt)
EditText countryEdt;
@BindView(R.id.registerDateBirthEdtTxt)
EditText birthDayEdt;
@BindView(R.id.registerGenderEdtTxt)
EditText genderEdt;
@BindView(R.id.registerFullnameEdtTxt)
EditText fullnameEdt;
@BindView(R.id.registerEmailEdtTxt)
EditText emailEdt;
@BindView(R.id.registerUsernameEdtTxt)
EditText usernameEdt;
@BindView(R.id.registerPasswordEdtTxt)
EditText passwordEdt;
@BindView(R.id.registerFacebookEdtTxt)
EditText facebookEdt;
For onClick I want use many views one click method, how can I use one @BindView for many views?
@OnClick({R.id.registerDateBirthInptLay, R.id.registerDateBirthEdtTxt})
void selectBirthDay() {
Upvotes: 0
Views: 1035
Reputation: 1335
Well, you could try this:
Implement OnClickListener on your activity.
public class YourActivity extends Activity implements OnClickListener{
//your edittexts
protected void onCreate(@Nullable Bundle savedInstanceState) {
edittext1.setOnClickListener(this);
edittext2.setOnClickListener(this);
edittext3.setOnClickListener(this);
...
}
@Override
public void onClick(View view) {
//your code
}
}
Upvotes: 0
Reputation: 4182
You can group multiple Views
into a List
or array
.
@BindViews({ R.id.first_name, R.id.middle_name, R.id.last_name })
List<EditText> nameViews;
And to access these Views
, just access the position:
nameViews.get(0).setText("Text");
Upvotes: 5