无法从自动完成文本中获取文本
问题描述:
我必须在android中使用数据库创建应用程序。在该数据库中,我有一个预定义的产品列表。无法从自动完成文本中获取文本
现在,事情是,我的ap必须向用户提供在该列表中引入一些不在列表中的其他产品的可能性。
为此,我创建中,我介绍一个新产品的自动填充文本视图,我把文本来回自动完成,我要在数据库中写现在
,我的问题是,当我展示了我在数据库中引入的产品,用于显示我在数据库中所拥有的敬酒文本,它在“产品......”旁边没有显示任何内容。
现在,这可能是因为当我尝试从自动填充中获取文本时,我得不到任何回应?
这是我如何从自动完成阅读:
mItem = (AutoCompleteTextView) findViewById(R.id.todo_edit_item);
String nou=mItem.getText().toString();
然后我比较诺坎普(这是我在自动完成写)与我在列表中已predefnied,因此,如果它是一个新产品(这是不在列表中的话)的我添加在数据库:
for(int i = 0; i < l; i++)
{
if (nou!=fruits[i])
t=true;
else t=false;
}
if (t==true)
{
db.insertTitle(nou);
fruits=db.getAllfromDB("Fruits","fruit");
l=l+1;
}
任何人的什么我在这儿做错了任何想法,因为我想不通out.I'lll在这里为请提前致谢:)
答
您使用!=
比较字符串,而不是使用!nou.equals(fruits[i])
。你也要每次比较数组中的所有元素,因为t
总是与数组中最后一个元素的比较值,无论是否找到匹配。
应该这样写的是:
t = true;
for(int i = 0; i < l; i++)
{
if (nou.equals(fruits[i]))
{
t=false;
break;
}
}
if (t==true)
{
db.insertTitle(nou);
fruits=db.getAllfromDB("Fruits","fruit");
l=l+1;
}
是的,我理解,但我总介绍的东西是不是在列表中,我总是什么也得不到显示....是正确的,我从自动完成读取如何?Thx – Gaby 2011-04-15 20:26:16
嗯,我试过了,但仍然没有显示......我真的那是因为它无法读取自动完成我推荐的产品 – Gaby 2011-04-15 20:34:22
每次在循环之前添加nou打印,因为它可能会返回全文,你可以使用split() – MByD 2011-04-15 20:37:21