我有EditText
serialText = (EditText) findViewById(R.id.pinText);
现在点击某些按钮,我应该专注于编辑文字来写东西。但是,当我点击编辑文本内部进行编写时,焦点将被删除,即,无论我输入的内容是否都没有出现在编辑文本中
这是执行此操作的代码,
public void method(View v) {
arrowButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
serialNumber = serialText.getText().toString();
if (serialNumber.equals("")) {
} else {
}
} }...
如果我没有输入任何东西,那么循环没有任何问题,但是其他部分没有发生同样的事情。
你能帮帮我吗?
这是我的完整代码
public void onClick(View v) {
if (v.getId() == R.id.pinBtn) {
arrowButton = (Button) findViewById(R.id.arrowBtn);
serialText = (EditText) findViewById(R.id.pinText);
serialText.setVisibility(View.VISIBLE);
arrowButton.setVisibility(View.VISIBLE);
//serialNumber = serialText.getText().toString();
arrowButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
serialNumber = serialText.getText().toString();
if (serialNumber.equals("")) {
Toast.makeText(getApplicationContext(),
"Please enter the serial number",
Toast.LENGTH_SHORT).show();
}
else {
isRegularSerialNumber(serialNumber);
String encodedserialNumber = Base64.encodeToString(
serialNumber.getBytes(), Base64.DEFAULT);
receiveSerialData(encodedserialNumber);
if (serialResponse.equals("Validated Successfully!")) {
showAudio(v);
} else {
Toast.makeText(getApplicationContext(),
"Invalid Serial Number", Toast.LENGTH_SHORT)
.show();
}
}
}
});
}
}
由于
答案 0 :(得分:2)
我最终解决了问题,问题是当我们在listview中保留编辑文本时,当尝试在其中写入时,键盘会推送listview。所以我们需要将属性android:windowSoftInputMode =“adjustPan”添加到listview或清单文件中包含列表视图的活动。
答案 1 :(得分:0)
请尝试将其替换为:
,而不是使用serialNumber.equals("")
serialNumber.length() == 0
或
serialNumber.matches("")
答案 2 :(得分:0)
您发布的代码为onClick()
arrowButton
,您应发布onClick()
的{{1}}