如何将用 EditText 编写的字符串保存为字符串 - android studio
How to save string written in EditText to string - android studio
我正在开发一个允许用户添加自己的词的应用程序,它是类别。我从一个微调器开始,该微调器在 sqlite db 和添加新词之前具有可用的词。当他单击“添加新词”时,微调器变为 EditText 框,允许他输入新词。每当我尝试将用 Edittext 编写的文本保存到字符串时,它都会显示字符串被定义为“添加新词”,而不是用户输入的值。我该怎么办?
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
if(parent.getId()==R.id.spinword)
{
editword=parent.getItemAtPosition(position).toString();
if(editword.equals("Add new word"))
{
spinwrd.setVisibility(spinwrd.INVISIBLE);
edtwrd.setVisibility(edtwrd.VISIBLE);
flag = 1;
}
if(flag == 1)
{
editword.replace(editword,edtcat.getText().toString());
}
}
if(parent.getId() == R.id.spincat) {
editcategory = parent.getItemAtPosition(position).toString();
if (editcategory.equals("Add new category")) {
spincat.setVisibility(spincat.INVISIBLE);
edtcat.setVisibility(edtcat.VISIBLE);
editcategory = edtcat.getText().toString();
}
}
}
我尝试了 equals 方法和 replace 方法,但是没有用。
不确定你想做什么但我认为你应该尝试改变
editword.replace(editword,edtcat.getText().toString()
为
editword.replace(editword,edtwrd.getText().toString())
这个问题的答案如下:首先,替换、清除或任何更改取决于行的位置意味着:在上面的代码中,我试图捕获用户编写的文本但是在执行时,当用户选择“添加新词”时,文本就变成了它。这个问题的解决方案是在这个函数完成时放置代码行 editword.replace(editword,edtcat.getText().toString());
以确保用户输入了一些文本。
我正在开发一个允许用户添加自己的词的应用程序,它是类别。我从一个微调器开始,该微调器在 sqlite db 和添加新词之前具有可用的词。当他单击“添加新词”时,微调器变为 EditText 框,允许他输入新词。每当我尝试将用 Edittext 编写的文本保存到字符串时,它都会显示字符串被定义为“添加新词”,而不是用户输入的值。我该怎么办?
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
if(parent.getId()==R.id.spinword)
{
editword=parent.getItemAtPosition(position).toString();
if(editword.equals("Add new word"))
{
spinwrd.setVisibility(spinwrd.INVISIBLE);
edtwrd.setVisibility(edtwrd.VISIBLE);
flag = 1;
}
if(flag == 1)
{
editword.replace(editword,edtcat.getText().toString());
}
}
if(parent.getId() == R.id.spincat) {
editcategory = parent.getItemAtPosition(position).toString();
if (editcategory.equals("Add new category")) {
spincat.setVisibility(spincat.INVISIBLE);
edtcat.setVisibility(edtcat.VISIBLE);
editcategory = edtcat.getText().toString();
}
}
}
我尝试了 equals 方法和 replace 方法,但是没有用。
不确定你想做什么但我认为你应该尝试改变
editword.replace(editword,edtcat.getText().toString()
为
editword.replace(editword,edtwrd.getText().toString())
这个问题的答案如下:首先,替换、清除或任何更改取决于行的位置意味着:在上面的代码中,我试图捕获用户编写的文本但是在执行时,当用户选择“添加新词”时,文本就变成了它。这个问题的解决方案是在这个函数完成时放置代码行 editword.replace(editword,edtcat.getText().toString());
以确保用户输入了一些文本。