Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
Posledovskiy
0 / 0 / 0
Регистрация: 29.10.2012
Сообщений: 1
1

Прикрутить RadioGroup к ListView(SimpleCursorAdapter)

01.11.2012, 15:32. Просмотров 1132. Ответов 1
Метки нет (Все метки)

Не могу понять как реализовать одиночный выбор из списка:
Сейчас выводит список компаний, где я могу сделать множественный выбор, а мне нужно только одиночный.

Стандартный адаптер мне не подходит я про это:android.R.layout.simple_list_item_1
RadioGroup я так понимаю для этого случая не подходит.
Я попытался сделать:
XML
1
2
3
4
5
6
7
8
9
10
    <LinearLayout>
      ................
      <RadioGroup>
        <ListView>
         .............
         .............
       </ListView>
      </RadioGroup>
       ................
    </LinearLayout>
т.е впихнуть LIstView в RadioGroup но ни чего не вышло.

//Основное Activity
main.xml:
XML
1
2
3
4
5
6
7
8
    <LinearLayout>
      ................
        <ListView>
         .............
         .............
       </ListView>
       ................
    </LinearLayout>
//Элемент списка
list_item.xml:
XML
1
2
3
4
5
     <LinearLayout>
      ................
              <RadioButton/>
       ................
    </LinearLayout>
//Мой кастом адаптер
Adapter.class:
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
61
62
63
64
65
        public class Adapter extends SimpleCursorAdapter{
     Context ctx;
     Cursor cursor;
    public Adapter(Context context, int layout, Cursor c, String[] from, int[] to) {
        super(context, layout, c, from, to);
        ctx = context;
        cursor=c;
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View view = super.getView(position, convertView, parent);
        long id=getItemId(position);
        view.setTag(id);
 
       
        final int rowID = cursor.getInt(cursor.getColumnIndex("_id"));     
                
        RadionButton radio=(RadionButton)view.findViewById(R.id.radio);
        radio.setOnCheckedChangeListener(myClickRadio);
        radio.setTag(rowID);
       
        ImageView imgViewInfo=(ImageView)view.findViewById(R.id.ivImgInfo);
        imgViewInfo.setOnClickListener(myClickButtonInfo);
        imgViewInfo.setTag(rowID);
        
        ImageView imgViewRating=(ImageView)view.findViewById(R.id.ivImgRating);
        imgViewRating.setOnClickListener(myClickButtonRating);
        imgViewRating.setTag(rowID);
        
    return view;
    }
    
    
    // обработчик для Radio
      OnClickListener myClickRadio = new OnClickListener () {
      public void onClick(View v) {
        // TODO Auto-generated method stub
        Toast.makeText(ctx, "ID"+v.getTag(), Toast.LENGTH_LONG).show();
 
    }
 
    };
    
    
    // обработчик для кнопок
    OnClickListener myClickButtonInfo = new OnClickListener () {
      public void onClick(View v) {
        // TODO Auto-generated method stub
        Toast.makeText(ctx, "ID"+v.getTag(), Toast.LENGTH_LONG).show();
     
    }
 
    };
    
    // обработчик для кнопок
    OnClickListener myClickButtonRating = new OnClickListener () {
      public void onClick(View v) {
        // TODO Auto-generated method stub
        Toast.makeText(ctx, "ID"+v.getTag(), Toast.LENGTH_LONG).show();
    
    }
 
    };
}

//Activity
MainActivity:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
.......................................
              // получаем курсор содержащий данные о компании
            cursorComp = db.getAllData();
            startManagingCursor(cursorComp);
            
            
         // формируем столбцы сопоставления
            String[] from = new String[] {DB.COLUMN_NAME };
            int[] to = new int[] {R.id.tvTextCompName};
 
            // создааем адаптер и настраиваем список
 
            
            scAdapter = new Adapter(this, R.layout.list_item, cursorComp, from, to);
            
            lvData = (ListView) findViewById(R.id.lvData);
            lvData.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
            lvData.setAdapter(scAdapter);
 
......................................
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.11.2012, 15:32
Ответы с готовыми решениями:

Вывод из базы данных в ListView через SimpleCursorAdapter
Доброе время суток. Пишу программу под Андроид в среде Android Studio и...

SimpleCursorAdapter(ListView заполняется данными только после прокрутки скрола)
Помогите решить задачу. У меня ListView начинает заполняться данными, только...

Переход на новое activity с элемента listView, заполненного через SimpleCursorAdapter
Здравствуйте! Помогите разобраться с такой проблемой: Есть список listView,...

ListView, База данных и SimpleCursorAdapter - onItemClick срабатывает только после добавления данных
Здравствуйте! Подскажите, плиз, решение проблемы новичку... есть БД......

RadioButton, RadioGroup в ListView
Не пойму я как сделать. Мне надо список из трех элементов radioButton. Вот и...

1
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
01.11.2012, 18:14 2
http://www.coderzheaven.com/2012/01/...ew-in-android/
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.11.2012, 18:14

SimpleCursorAdapter
Почему то ругаетсяв строке new SimpleCursorAdapter()... Что не так делаю? ...

SimpleCursorAdapter не хочет работать
Добрый день. Вобщем такая ситация. Нажимаю на MainActivity кнопку и по интенту...

Получение данных с SimpleCursorAdapter
Скопировал себе в приложение пример из библиотеки шерлок, с табами. оно...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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