如何在Android中初始化ButterKnife中的许多视图

时间:2017-05-04 19:02:14

标签: android butterknife

我想在我的项目中使用 SELECT license FROM tbl1 WHERE id = $x //then storing license as a var, lets say $license for example DELETE FROM tbl1 WHERE id = $x UPDATE tbl2 SET count = count - 1 WHERE license = $license 。我使用了很多ButterKnife并初始化了这个EditText我使用了这段代码:

editTexts

对于 onClick 我想要一次点击方法使用多个视图,如何在很多视图中使用一个 @BindView

@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;

2 个答案:

答案 0 :(得分:3)

您可以将多个Views分组为Listarray

@BindViews({ R.id.first_name, R.id.middle_name, R.id.last_name })
List<EditText> nameViews;

要访问这些Views,只需访问该位置:

nameViews.get(0).setText("Text");

答案 1 :(得分:0)

嗯,你可以试试这个:

在您的活动上实施OnClickListener。

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
}

}