所以我的Android应用程序需要一个文本输入框。 我在我的xml中有这个:
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/inputCodePA"
android:textSize="18sp"
android:inputType="text"
android:hint="@string/inputHint"
android:layout_alignParentBottom="true"
android:layout_toRightOf="@+id/arrowRightPA"
android:layout_toEndOf="@+id/arrowRightPA">
<requestFocus/>
</EditText>
和此:
public void setOnClickListners(){
final EditText inputBox = (EditText)findViewById(R.id.inputCodePA);
inputBox.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
inputBox.clearFocus();
inputBox.requestFocus();
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(inputBox, InputMethodManager.SHOW_FORCED);
}
});
inputBox.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
inputBox.setText("");
inputBox.clearFocus();
inputBox.requestFocus();
return false;
}
});
}
对于我的活动类中的代码(在onCreate()中调用setOnClickListner())。
但是,每当我在EditText框中输入内容并按回车键后,我就无法打开键盘再次输入文字。
我知道我犯了一个非常基本的错误,但我似乎无法弄清楚是什么。 毕竟,这是EditText第一次让我失望。
答案 0 :(得分:0)
HA!
我发现了问题!
这是因为我在代码中的EditText下面有一个ScrollView(这使得ScrollView变成'在前面'),这使得用户根本不能点击视图!
希望这有助于其他犯这些愚蠢错误的人!