以下是我的代码。当我单击 EditText 系统时,不会触发意图,而是在第二次单击时调出键盘,仅触发意图。如何确保它在第一次点击时发生。
description.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//Toast.makeText(sendingpage.this, description.getText(), 2000).show();
Intent fullscreen = new Intent(sendingpage.this, ShowSummeryActivity.class);;
startActivity(fullscreen);
}
});
感谢您提前抽出时间。
我也有同样的问题 解决方案是(使用warpzit注释帮助)添加 android:focusable="false" 和 android:focusableInTouchMode="false" 这很容易解决我的问题
我不知道为什么会出现这种行为,我得到了相同的代码,并且在模拟器和 HTC 设备上都运行良好。无论如何,您可以使用
InputMethodManager
手动隐藏软键盘。将其添加到您的 onClick
方法中。
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(description.getWindowToken(), 0);
您可以使用 onTouchListener 代替 onClickListener!!
description.setOnTouchListener { view, motionEvent ->
if (motionEvent.action==MotionEvent.ACTION_UP){
// you can set the intent here!!
}
false
}
此代码是 Kotlin 语言,您可以将此代码更改为 Java 语言。