我在使用Butterknife
和从EditTexts
获取文字时遇到了一些问题。我有很多EditTexts
的活动。为简洁起见,我在代码示例中只包含2-3个。我最终将输入的文本与iText的库一起使用以吐出PDF。
首先,我与Butterknife绑定观点:
public class NewPatientActivity extends AppCompatActivity {
@BindView(R.id.new_patient_editText_last_name)
TextInputEditText lastNameTextInputEditText;
@BindView(R.id.new_patient_editText_nick_name)
TextInputEditText nickNameTextInputEditText;
@BindView(R.id.new_patient_editText_date_of_birth)
TextInputEditText dateOfBirthTextInputEditText;
然后我在ButterKnife.bind(this);
中onCreate()
。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_new_patient);
ButterKnife.bind(this);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
}
然后,单击我的浮动操作按钮应该抓取EditTexts
中输入文本的文本:
@OnClick(R.id.floating_action_button)
public void finishedPatientNotesFabClick(View view) {
try {
String lastNameText = lastNameTextInputEditText.getText().toString();
String nickNameText = nickNameTextInputEditText.getText().toString();
String dateOfBirth = dateOfBirthTextInputEditText.getText().toString();
}
然后当我将它们用作构造新段落的参数时,我尝试使用这些字符串:
private static void addBioAndContactInfoChapter(Document document) throws DocumentException {
bioAndContactInfoChapter.add(new Paragraph(R.string.patient_last_name) + ": " +
lastNameText);
bioAndContactInfoChapter.add(new Paragraph(R.string.patient_nickname) + ": " +
nickNameText);
bioAndContactInfoChapter.add(new Paragraph(R.string.patient_date_of_birth) + ": " +
dateOfBirth);
但这就是问题所在。当我使用这些字符串时,我得到了
无法解析符号'__string name'。
Paragraph类有一个只接受String的构造函数,所以我不认为这是问题所在。因为Butterknife或者是什么而发生了一些时髦的事情?任何帮助将不胜感激!!!
答案 0 :(得分:2)
通过代码小组,您的String lastNameText
,nickNameText
和dateOfBirth
似乎是您的方法finishedPatientNotesFabClick
的本地代码。很可能这就是为什么在addBioAndContactInfoChapter
方法中无法访问它们的原因。在方法之外声明这些变量,并在OnClickListener
。