не могу получить текст из автозаполнения - PullRequest
1 голос
/ 16 апреля 2011

Я должен создать приложение в Android с базой данных. В этой базе данных у меня есть предопределенный список продуктов.

Теперь, все дело в том, что мой AP должен предложить пользователю возможность представитьв этом списке некоторые другие продукты, которых нет в списке.

С этой целью я создал текстовое представление автозаполнения, в котором я представляю новый продукт и беру текст для автозаполнения, и мне нужно написатьэто в базе данных

Теперь моя проблема в том, что когда я отображаю продукты, которые я ввел в базу данных, текст тоста, который я использую для отображения того, что у меня есть в базе данных, ничего не показывает рядом с"product ......".

Это может быть потому, что когда я пытаюсь получить текст из автозаполнения, я ничего не получаю взамен?

Вот как я читаю изautocomplete:

mItem = (AutoCompleteTextView) findViewById(R.id.todo_edit_item);

String nou=mItem.getText().toString();

И затем я сравниваю nou (что я и написал в автозаполнении) с тем, что я предварительно определил в списке, так что если это новый продукт (которого еще не было в списке))Я добавляю это в базу данных:

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;
    }

У кого-нибудь есть идеи о том, что я делаю здесь неправильно, потому что я не могу понять. Я буду здесь для более подробной информации. Заранее спасибо:)

1 Ответ

0 голосов
/ 16 апреля 2011

Вы сравниваете строки, используя != вместо !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;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...