Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android如何防止软键盘和定义按钮作为文本编辑的输入_Java_Android_Button_Keyboard_Textedit - Fatal编程技术网

Java Android如何防止软键盘和定义按钮作为文本编辑的输入

Java Android如何防止软键盘和定义按钮作为文本编辑的输入,java,android,button,keyboard,textedit,Java,Android,Button,Keyboard,Textedit,我有两个文本编辑和一组按钮作为这两个文本编辑的输入(类似于计算器)。如何防止用户按下任何文本编辑时出现软键盘,并允许我的按钮在按下时输入值 总结如下: 我想防止在textEdit处于活动状态时出现系统软键盘 我希望我的按钮成为我两次文本编辑的输入源 最后,我如何在我的按钮侦听器中知道哪个文本编辑处于活动状态,以便我可以附加按下的数字 下图显示了一个示例: 1)您可以使用EditExt默认方法进行尝试,如: android:editable="false" android:focusable="f

我有两个文本编辑和一组按钮作为这两个文本编辑的输入(类似于计算器)。如何防止用户按下任何文本编辑时出现软键盘,并允许我的按钮在按下时输入值

总结如下:

我想防止在textEdit处于活动状态时出现系统软键盘

我希望我的按钮成为我两次文本编辑的输入源

最后,我如何在我的按钮侦听器中知道哪个文本编辑处于活动状态,以便我可以附加按下的数字

下图显示了一个示例:

1)您可以使用EditExt默认方法进行尝试,如:

android:editable="false"
android:focusable="false"
android:clickable="false"
2) 在另一个按钮上,单击可将文本设置为编辑文本,如:

editText.setText(btnValue);
我找到了解决办法:

首先,您需要禁用文本编辑的输入法,如下所示:

yourTextEdit.setInputType(InputType.TYPE_NULL);
上述操作将阻止软键盘成为文本编辑的输入

它们位于按钮侦听器
.setOnClickListener
中,您可以通过选中
您的textEdit.isFocused()
来识别哪个textEdit处于活动状态,并在侦听器中执行任何您想执行的操作


希望这对其他人有所帮助

尝试编辑:false?尝试过但效果不佳。但是我怎么知道用户输入的是哪个文本编辑。。。我希望该按钮将值输入到用户正在激活的文本编辑以进行输入您可以添加TextChangeListener,但如果您希望允许编辑edittext,则必须根据您的条件删除上述标记