Установите начальное значение Android Spinner с некоторым динамическим значением - PullRequest
1 голос
/ 19 января 2011

Я хочу установить динамическое значение для счетчика в качестве его начального значения ..

Если я установлю это динамическое значение, оно не позволит мне перейти на другое значение ..

Динамическое значение счетчика равно «AMEX», если я хочу изменить свое значение на «Обнаружить», которое находится в значении массива, я не могу,

, поэтому, пожалуйста, дайте мне решение, вот мой код ..

spin_type = (Spinner) findViewById(R.id.Spinner_type);
                   adapter_type = new ArrayAdapter(Credit_Card_Main.this,android.R.layout.simple_spinner_item, array_type);
                   adapter_type.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                   spin_type.setAdapter(adapter_type);




spin_type.setOnItemSelectedListener(new OnItemSelectedListener(){
public void onItemSelected(AdapterView<?> arg0, View arg1,
            int arg2, long arg3) {
                        spin_type.setSelection(adapter_type.getPosition(Signin.VALUE_type[selected_position]));

@Override
    public void onNothingSelected(AdapterView<?> arg0) {
        }
    });

Спасибо

Венкатеш

Ответы [ 2 ]

0 голосов
/ 16 марта 2011
    spin_type.setOnItemSelectedListener(new OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> arg0, View arg1,
                int arg2, long arg3) {
            // TODO Auto-generated method stub
            for (int i = 0; i < array_type.length; i++) {
                if (test_flag_type == false) {
                    if (array_type[i].toString().equalsIgnoreCase(Credit_Card_List.VALUE_type[Credit_Card_List.selectCard])) {
                        spin_type.setSelection(adapter_type.getPosition(Credit_Card_List.VALUE_type[Credit_Card_List.selectCard]));
                        test_flag_type = true;
                    }
                }
            }
        }

        @Override
        public void onNothingSelected(AdapterView<?> arg0) {
            // TODO Auto-generated method stub
        }
    });

, где array_type содержит список имен кредитных карт.

Я получаю первое значение в array_type [i] здесь i = 0, преобразую его в строку, затем сравнивает его со значениями, полученными изБаза данных (т. Е.) Value_type ..

Если то же самое, то оно войдет внутрь цикла if и установит значение в позицию на «i» ..

Если значение установлено один раз, я изменяю test_flag_tyype на trueпоэтому в следующий раз он не пойдет внутри цикла, поскольку test_flag_type имеет значение true ..

Это способ заставить его работать ..

0 голосов
/ 19 января 2011

Вы можете установить начальное значение для счетчика с помощью spinner.setPrompt (); метод. Так просто установите динамическое значение на это

...