我正在经历一个问题。
XML编码
<EditText
android:id="@+id/edt_txt_id"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clickable="true"
android:focusable="false"
android:onClick="editTextClick" >
</EditText>
Java编码
public void editTextClick(View v) {
if (v.getId() == R.id.edt_txt_id){
System.out.println(" edit text click");
EditText edtxtx =(EditText)v;
edtxtx.requestFocus();
edtxtx.setText("");
}
}
我希望当我单击editText时,当前文本必须是dissapperar。但是当我单击
android:focusable="false"
单击事件工作正常,但光标不再位于编辑文本处。这意味着如果要输入一些新文本,那么即使光标不在编辑文本,如何输入新文本,如果我使用
android:focusable="true"
然后单击事件不起作用。但可用于任何新编辑。问题是什么?我知道这是个愚蠢的错误,但我不知道在哪里。提前感谢大家。
您需要为您的EditText
实现setonFocus usChange
监听器以实现您想要的功能。
这是焦点侦听器示例。
edtxtx.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if(hasFocus){
Toast.makeText(getApplicationContext(), "got the focus", Toast.LENGTH_LONG).show();
edtxtx.setText("");
}else {
Toast.makeText(getApplicationContext(), "lost the focus", Toast.LENGTH_LONG).show();
}
}
});
试试这条路
public void editTextClick(View v) {
if (v.getId() == R.id.edt_txt_id) {
System.out.println(" edit text click");
EditText edtxtx = (EditText) v;
edtxtx.setFocusable(true); // Add This Line And try
edtxtx.requestFocus();
edtxtx.setText("");
}
}
您好,在我看来,请为OnFocusChangeListener编写代码,您可以编写如下
final EditText edittxt = (EditText) findViewById(R.id.edittext);
edittxt.setOnFocusChangeListener(new OnFocusChangeListener()
{
@Override
public void onFocusChange(View v, boolean isFocus)
{
//yours code writing and actions to take further
}
});
您可以检查isFocus可以是真或假,这样您就可以进一步进行,可以这样做
if (isFocus == true)
{//some action
} else{//another action}
另一种可能的方法是使用单击侦听器,如下所示
editText.setOnClickListener(new OnClickListener(){
public void onClick(View v){
((EditText)v).setText("");
}
});
前面多次提到过vim这个东西,它是linux中必不可少的一个工具。没有它很多工作都无法完成。早期的Unix都是使用的vi作为系统默认的编辑器的。你也许会有疑问,vi与vim有什么区别?可以这样简单理解,vim是vi的升级版。很多linux系统管理员都习惯用vi,那是因为他们接触linux的时候用的就是vi,vim后来才比较流行。所以,无所谓用vi和vim,只要你能达到你想要的目的即可。 在笔者看来
有人知道一种只需单击行即可触发行编辑的方法吗? 我希望看到与单击编辑命令按钮时相同的功能,但通过选择行触发。
我不想移动我的布局,其中有几个视图,所以当用户触摸编辑文本,然后键盘打开,我的布局小部件上升。我甚至在清单中使用了代码 Android:WindowsoftinPutmode=“AdjustPan”
是否可以使可单击但不可编辑。 我不希望它是可编辑的(键盘也不应该出现,我们也不应该改变提示) 实际上,我只想使用编辑文本作为带有提示的图像(不能更改)。我知道实际的方法是使用一个和一个,但我希望它尝试使用,因为这样我将只使用一个视图,而不是2个。而且每件事都是动态的,所以没有XML。 对于上述需求,XML中的解决方案是android:editable=“false”,但我想在Java中使用它。 但
我已经试着解决了好几个小时了,但还是没能解决。我设置了这个editText,称为活动上的布局,并将其连接到活动上的变量,当您单击字段时,它会打开可视键盘,但当您按下一个键时,它会将您带到类似浏览器的搜索屏幕,而不只是更新editText的文本。 在我的xml编辑文本是: 在我这样做的活动中 我还是找不到办法让它不发生。你能帮助我吗?
我有:2个FXML文件和2个控制器。每个FXML都合并了控制器。这是打开新FXML的代码(当真正的fxml运行时,它会打开另一个) 这是打开的FXML文件的控制器 如您所见,我在所有声明的字段上添加了文本(FXML-ID已绑定!)通过initialize方法加载根之后。听起来不错,但我有一个空点异常。 为了清楚地指出事情:-我已经将fxml-id绑定到它们相应的组件。-FXML文件被正确加载(ro