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

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

Войти
Регистрация
Восстановить пароль
 
bogdan kliuk
0 / 0 / 0
Регистрация: 13.12.2012
Сообщений: 15
#1

spinner в ListView - Программирование Android

23.11.2013, 20:26. Просмотров 1058. Ответов 4
Метки нет (Все метки)

в каждой строке ListView есть текст и спинер указывающий какое то значение.
два дня сижу не могу заставить чтоб каждый елемент листа считывал значение спинера ниже представленым адаптером.

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
66
67
68
69
70
71
72
73
74
75
76
package com.example.andrtestspin01;
 
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
 
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Spinner;
import android.widget.Toast;
 
public class MainActivity extends Activity {
    final String atribute_zavdannj = "zavdannj";
    final String atribute_opus = "opus";
 
    String[] datasp = { "one", "two", "three", "four", "five" };
 
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        setContentView(R.layout.lay_spin);
        // адаптер
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                android.R.layout.simple_spinner_item, datasp);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
 
        Spinner spinner = (Spinner) findViewById(R.id.spinner12);
        spinner.setAdapter(adapter);
        // заголовок
        spinner.setPrompt("Title");
        // выделяем элемент
        spinner.setSelection(2);
        setContentView(R.layout.activity_main);
        ArrayList<Map<String, Object>> data = new ArrayList<Map<String, Object>>(
                datasp.length);
        Map<String, Object> m;
        for (int i = 0; i < datasp.length; i++) {
            m = new HashMap<String, Object>();
            m.put(atribute_zavdannj, datasp[i]);
            m.put(atribute_opus, spinner);
 
            data.add(m);
        }
        String[] from = { atribute_zavdannj, atribute_opus };
        // массив ID View-компонентов, в которые будут вставлять данные
        int[] to = { R.id.editText1, R.id.spinner12 };
 
        // создаем адаптер
        SimpleAdapter sAdapter = new SimpleAdapter(this, data,
                R.layout.lay_spin, from, to);
 
        // определяем список и присваиваем ему адаптер
        ListView listView1 = (ListView) findViewById(R.id.listView1);
        listView1.setAdapter(sAdapter);
        // устанавливаем обработчик нажатия
        /*
         * spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
         * 
         * @Override public void onItemSelected(AdapterView<?> parent, View
         * view, int position, long id) { // показываем позиция нажатого
         * элемента Toast.makeText(getBaseContext(), "Position = " + position,
         * Toast.LENGTH_SHORT).show(); }
         * 
         * @Override public void onNothingSelected(AdapterView<?> arg0) { } });
         */
    }
 
}
код активити и итема
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
 
    <ListView
        android:id="@+id/listView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
    </ListView>
 
</LinearLayout>
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" >
 
    <EditText
        android:id="@+id/editText1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:ems="10" >
 
        <requestFocus />
    </EditText>
 
    <Spinner
        android:id="@+id/spinner12"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1" />
 
</LinearLayout>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2013, 20:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос spinner в ListView (Программирование Android):

Синхронизация Spinner и Listview - Программирование Android
Есть спиннер со списком сайтов, который получен в виде json ArrayList&lt;HashMap&lt;String, String&gt;&gt; siteList; List&lt;String&gt;...

Spinner внутри ListView - Программирование Android
Здравствуйте, я пытаюсь сделать Spinner внутри ListView, но все попытки проходят без успешно. Скорей всего нужно создавать адаптер для...

Spinner - Программирование Android
В ответе выдает 0, что исправить? import android.os.Bundle; import android.app.Activity; import android.view.View; import...

Spinner - Программирование Android
подскажите пожалуйста есть такой код... spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { ...

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

Spinner - Программирование Android
Доброго времени суток! Можно ли сделать так чтобы при выборе одного из вариантов спиннера открывался новый активити

4
NiRamz
211 / 211 / 16
Регистрация: 26.12.2010
Сообщений: 691
23.11.2013, 20:35 #2
а где собственно сам адаптер?
0
bogdan kliuk
0 / 0 / 0
Регистрация: 13.12.2012
Сообщений: 15
23.11.2013, 20:44  [ТС] #3
adapter - для спинера, sadapter - для листВювера
0
V0v1k
1159 / 983 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
23.11.2013, 20:51 #4
нужно кастомный адаптер делать.

Добавлено через 22 секунды
http://www.vogella.com/articles/AndroidListView/article.html
0
bogdan kliuk
0 / 0 / 0
Регистрация: 13.12.2012
Сообщений: 15
23.11.2013, 21:28  [ТС] #5
Цитата Сообщение от V0v1k Посмотреть сообщение
нужно кастомный адаптер делать.

Добавлено через 22 секунды
http://www.vogella.com/articles/AndroidListView/article.html
прочитал, но там не вказано как со спинерами работать. п.с. программа которую я навел только отображает проблему с которой столкнулся. сам проект andrTestAct01_08.zip там 2 спинера которые я никак не могу запустить
0
23.11.2013, 21:28
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.11.2013, 21:28
Привет! Вот еще темы с ответами:

spinner - Программирование Android
как реализовать spinner чтобы к выбранной строке соответствовала число. например есть формула A+B+C=Z. A,B - это EditText (с этим все...

Список из Spinner - Программирование Android
Здравствуйте. Умею работать с Spinner, умею просто с ListView, но умею это делать по отдельность. Пробовал найти что то похожее, нашел...

проблема со Spinner'ом - Программирование Android
Добрый день подскажите где может быть ошибка ... import java.util.ArrayList; import java.util.List; import...

Spinner элементы - Программирование Android
Доброго времени суток) Есть Spinner список , нужно из этого списка выбрать элемент(текст) ,чтобы потом нажать на кнопку и в другом...


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

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

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