Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
Digetix
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 651
#1

Как узнать что выбрал пользователь в AutoCompleteTextView - Программирование Android

30.10.2012, 14:13. Просмотров 1258. Ответов 12
Метки нет (Все метки)

Доброго времени суток. Как узнать какую подсказку выбрал пользователь из AutoCompleteTextView ? И как сделать чтоб например если выбрал первую, то одно действие, если другое, то действие 2. Код ниже. Если можете подправьте код
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.add);
    
    AutoCompleteTextView textView = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);
    String[] nov_strani = getResources().getStringArray(R.array.strani);
    ArrayAdapter<String> adapter = 
            new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, nov_strani);
    textView.setAdapter(adapter);
    
  }
 
  public void afterTextChanged(Editable arg0) {
    // TODO Auto-generated method stub
  }
 
  public void beforeTextChanged(CharSequence s, int start, int count,
        int after) {
    // TODO Auto-generated method stub
  }
 
  public void onTextChanged(CharSequence s, int start, int before, int count) {
    // TODO Auto-generated method stub
  }
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.10.2012, 14:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как узнать что выбрал пользователь в AutoCompleteTextView (Программирование Android):

Автозаполнение AutoCompleteTextView. Что такое groceryDb? - Программирование Android
В книге Android COokbook есть глава, посвященная тому, как AutoCompleteTextView подружить с SimpleCursorAdapter. final...

Как узнать когда пользователь перестает касаться экрана? - Программирование Android
Ребята, посоветуйте как узнать когда пользователь перестает касаться экрана?Есть приложение при нажатии на кнопку запускается таймер, а...

Как узнать, какой именно из установленных браузеров выбирает пользователь - Программирование Android
Здравствуйте. Подскажите, пожалуйста, как программно узнать, какой браузер выбирает пользователь. Например, один из тех, что приведены на...

Как узнать курс валют страны в которой находиться пользователь в android - Программирование Android
Здравствуйте. Есть Android приложение. Подскажите пожалуйста как получать текущий курс валют нацбанка в зависимости от места положения(то...

Как подгрузить данные в AutoCompleteTextView? - Программирование Android
Здравствуйте, снова столкнулся с проблемой адаптеров. Суть такая, что при запуске определенного фрагмента в AutoCompleteTextView должны...

Как определить, что пользователь разрешил доступ к сети - Программирование Android
Всем привет! Есть ли какое-то событие на которое можно подписаться, чтобы узнать, что доступ к сети разрешен или отключен в настройках...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
30.10.2012, 14:23 #2
сравнить строки.
0
Digetix
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 651
30.10.2012, 14:26  [ТС] #3
Цитата Сообщение от V0v1k Посмотреть сообщение
сравнить строки.
А как её вообще вытащить из автозавершения?
0
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
30.10.2012, 14:29 #4
adapter.getItem(int position)

Добавлено через 27 секунд
nov_strani[i]
1
Digetix
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 651
30.10.2012, 14:41  [ТС] #5
Цитата Сообщение от V0v1k Посмотреть сообщение
adapter.getItem(int position)

Добавлено через 27 секунд
nov_strani[i]
А код условия не подскажете?
0
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
30.10.2012, 14:43 #6
какого условия?
0
Digetix
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 651
30.10.2012, 14:45  [ТС] #7
Цитата Сообщение от V0v1k Посмотреть сообщение
какого условия?
Условия if-else или лучше через switch..case ? Чтоб выполнять действия при выборе различных подсказок
0
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
30.10.2012, 14:52 #8
if(text.equals(nov_strani[0])) {
} else if(text.equals(nov_strani[1])) {
...
1
Digetix
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 651
31.10.2012, 01:22  [ТС] #9
Цитата Сообщение от V0v1k Посмотреть сообщение
if(text.equals(nov_strani[0])) {
} else if(text.equals(nov_strani[1])) {
...
Огромное спасибо

Добавлено через 10 часов 27 минут
Цитата Сообщение от V0v1k Посмотреть сообщение
if(text.equals(nov_strani[0])) {
} else if(text.equals(nov_strani[1])) {
...
Сделал вот такой код, Эклипс ошибки не выдает, но ничего не работает. Не зависимости от выбора в первом автозавершении. Можете проверить код?

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
public class ActivityAdd extends Activity implements TextWatcher{
 
     AutoCompleteTextView autoCompleteTextView;
     
@Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.add);
    
    AutoCompleteTextView textView = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);
    String[] nov_strani = getResources().getStringArray(R.array.strani);
    ArrayAdapter<String> adapter = 
            new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, nov_strani);
    textView.setAdapter(adapter);   
          
  }
 
  public void afterTextChanged(Editable arg0) {
      
      AutoCompleteTextView textView = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);
      String[] nov_strani = getResources().getStringArray(R.array.strani);
      
      if(textView.equals(nov_strani[0])) 
      {
            AutoCompleteTextView textView2 = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView2);
            String[] nov_obl = getResources().getStringArray(R.array.oblasti_ukr);
            ArrayAdapter<String> adapter2 = 
                    new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, nov_obl);
            textView2.setAdapter(adapter2);
          
      } else if(textView.equals(nov_strani[2])) {
          
            AutoCompleteTextView textView2 = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView2);
            String[] nov_obl = getResources().getStringArray(R.array.oblasti_bel);
            ArrayAdapter<String> adapter2 = 
                    new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, nov_obl);
            textView2.setAdapter(adapter2);
          
      } else
      {
          Toast toast = Toast.makeText(ActivityAdd.this, "Ничего не выбрано",
                    Toast.LENGTH_SHORT);
            toast.setGravity(Gravity.CENTER, 0, 0);
            toast.show();  
      }
        
      }
      
 
  public void beforeTextChanged(CharSequence s, int start, int count,
        int after) {
    // TODO Auto-generated method stub
  }
 
  public void onTextChanged(CharSequence s, int start, int before, int count) {
    // TODO Auto-generated method stub
      
      
      
  }
0
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
31.10.2012, 01:55 #10
1) никуда не сетаете TextWatcher.
2) уверены что корректно сравнивать AutoCompleteTextView и String?
0
Digetix
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 651
31.10.2012, 12:52  [ТС] #11
Цитата Сообщение от V0v1k Посмотреть сообщение
1) никуда не сетаете TextWatcher.
А куда его?

Цитата Сообщение от V0v1k Посмотреть сообщение
2) уверены что корректно сравнивать AutoCompleteTextView и String?
Правильнее будет сравнивать выбранную позицию через adapter.getItem(int position) ?
0
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
31.10.2012, 13:00 #12
Цитата Сообщение от Digetix Посмотреть сообщение
А куда его?
в textView.


Цитата Сообщение от Digetix Посмотреть сообщение
Правильнее будет сравнивать выбранную позицию через adapter.getItem(int position) ?
правильнее сравнивать String с String.
0
Digetix
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 651
31.10.2012, 13:02  [ТС] #13
Цитата Сообщение от V0v1k Посмотреть сообщение
в textView.



правильнее сравнивать String с String.
Извините, за наглость, но не могли бы вы в моём коде сделать исправления?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.10.2012, 13:02
Привет! Вот еще темы с ответами:

Как понять, что пользователь закончил ввод текста в поле? - Программирование Android
стоит задача сделать примерно такой функционал: пользователь вводит с клавиатуры телефона какой-то текст, и есть пользователь на какое-то...

Узнать кликнул ли пользователь по рекламе - Программирование Android
Использую InterstitialAd Как узнать кликнул ли пользователь по рекламе? т.е. необходимо узнать перешел ли он по рекламе или просто...

Как в Android Studio сделать так, что пользователь вводил функцию f(x)=? и точку? - Программирование Android
А она считала значение в этой точке

Как узнать что приложение свернуто? - Программирование Android
Как узнать что приложение свернуто по нажатию на кнопку Home? Если перехватить копку Home нельзя, как тогда в OnPause узнать что приложение...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
31.10.2012, 13:02
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru