我开发了一个应用程序,我在其中反复使用同一个textview,所以我需要经常清除textview。
由于它与UI相关,我必须在UI线程上执行此任务,但仅清除textview就需要5-6毫秒,我想这似乎非常巨大。有谁能帮助我减少这个时间,这样我就可以非常顺利地管理我的UI任务,而不跳过任何帧?
我正在附上我的代码段以供参考,在这里我尝试了两种方法,但最短的时间是5毫秒。
public class MainActivity extends AppCompatActivity { EditText editText; Button btnClearText; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); editText = findViewById(R.id.editText); btnClearText = findViewById(R.id.btnClearText); btnClearText.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // test with empty text editText.setText(""); // try with setText(''); Log.e("clearText", "setText(''): start "+ new Date().getTime()); editText.setText(""); Log.e("clearText", "setText(''): end" + new Date().getTime()); // difference of 15 millisecond // try with getText().clear(); Log.e("clearText", "getText().clear(): start" + new Date().getTime()); editText.getText().clear(); Log.e("clearText", "getText().clear(): end" + new Date().getTime()); // difference of 5 millisecond } }); } }
有什么改进绩效的建议或替代方法吗?
谢谢,
清除编辑文本的最佳有效方法之一是使用数据绑定
通过使用数据绑定,edittext有效地观察值并清除文本。
您还可以使用MVVM架构进行更好的性能改进。
或者只使用
et.settext(“”);
或
et_city.gettext().clear();
当EditText具有焦点并且出现软键盘并按下任何键时,我正在尝试清理EditText。我正在使用OnFocus usChangeListener方法来检测EditText何时具有焦点,但我不知道如何在相同的方法中实现键盘事件。 有人能帮我吗?非常感谢。亲切的问候
我尝试了各种步骤从Android Studio中移除断点。其中之一列在问题断点链接中 我遵循了这个,但是,仍然有一些绿色的红色的圈剩余,是什么是看到的那些在下面的图像和如何有效地去除那些。
我正在android studio中使用java开发和应用程序,希望在RecyclerView函数中编辑文本。我该怎么做?
我需要清除编辑文本时单击按钮。在java中,我们使用getText或setText,但在科特林中,我找不到任何东西。 我尝试使用此选项,但---text=“”---导致类型不匹配
如何继续删除char从编辑文本后settext编辑文本当按钮删除keybord是坚持真? 谢啦
我正在处理flyway Db迁移,我下载了flyway zip文件夹,并将其放在本地计算机上。 sql文件夹中有两个文件,即V1\uu Create\u person\u表。sql和V2\uu添加\u人员。sql。 飞行路线信息 Boxfuse Flyway Community Edition 5.2.4 数据库:jdbc:h2:文件:/foobardb(H2 1.4) 架构版本: Flyway迁