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

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

Войти
Регистрация
Восстановить пароль
 
azamatik_27
0 / 0 / 0
Регистрация: 07.05.2015
Сообщений: 6
#1

При нажатии на элемент ListView вывести новое Activity с информацией об этом элементе - Программирование Android

07.05.2015, 18:12. Просмотров 960. Ответов 10
Метки нет (Все метки)

Здравствуйте! Помогите пожалуйста! В общем есть список ListView с названиями кафе и ресторанов, надо сделать так чтобы при нажатии на название кафе выводилось новое Activity с информацией о самом кафе

Сейчас при нажатии на название кафе ничего не происходит, хотя Activity же я указал

Вот код:


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
import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
 
public class ActivityKafe extends ListActivity {
    String[] List = new String[] {
            "Кафе «Alligator Green»",
             "Кафе «Чайхона ресто»",
             "Кафе «Кён Бок Кун»",
             "Кафе «Furusato»",
             "Кафе «Силла»",
             "Кафе «Salon de Te»",
             "Пиццерия «New York Pizza»",
             "Кафе «Sushi Room»",
             "Кофейня «Adriano»",
             "Кафе «Центр Плова»",
             "Кафе-Бар «Одноклассники»",
             "Кафе-Бистро «Москва»",
             "Кафе «Dream Bar»",
             "Кафе «Сере»",
             "Кафе «Деревяшка»",
             "Кафе «Арзу Lounge»",
             "Кафе «Манты Бар»",
             "Кафе-Бар «Navigator»",
             "Кафе «Фаиза»",
             "Кафе «Дияр»",
             "Кафе «Ландау»",
             "Кофейня Coffee",
    }; 
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.kafe);
        
        
        
        setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, List));
    }
    
    public void onListItemClick(AdapterView<?> arg0, View arg1, int position, long id) {
        
        
        
        switch (Integer.parseInt(arg0.getTag().toString())) {
            case 0:
                Intent intent = new Intent(this, ActivityKafe1.class);
                startActivity(intent);
            break;
            case 1:
                Intent intent2 = new Intent(this, ActivityClub.class);
                startActivity(intent2);
            break;
              
        
        }
      }
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.05.2015, 18:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос При нажатии на элемент ListView вывести новое Activity с информацией об этом элементе (Программирование Android):

Вызвать из ListView новое Activity (где задействован SimpleAdapter) - Программирование Android
Привет Всем! Я купил себе android... и вдруг возникли мысли ...почему бы не сделать приложения.... и не изучить вообщем язык...

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

Открыть активити при нажатии на элемент Listview - Программирование Android
Здравствуйте, в андроид-программирование не давно, подскажите пожалуйста как, чтобы при нажатии на один элемент списка listview открывалась...

Ошибка при переходе на новое Activity - Программирование Android
Здравствуйте, уважаемые программисты! Не могли бы вы мне помочь? При переходе на новое активити программа выдает ошибку и вылетает. Я...

Как вместо названия Activity подставить элемент ListView? - Программирование Android
В приложении 2 Activity - MainActivity и DetailActivity. При запуске приложения открывается MainActivity, где отображается список из...

Передать данные при клике на listview в другое activity - Программирование Android
Подсксжите пожалуйста, как мне при клике на listview заполненный с помощью sdimplecursoradapter передеавать данные в другое activity для...

10
dajver
410 / 274 / 18
Регистрация: 18.09.2010
Сообщений: 1,112
07.05.2015, 23:06 #2
А что в ActivityKafe1 и ActivityClub ?Вам же надо какие то параметры передать что бы там отобразилось нужное инфо...
0
azamatik_27
0 / 0 / 0
Регистрация: 07.05.2015
Сообщений: 6
08.05.2015, 07:59  [ТС] #3
это пустые активити.. простите, а можно поподробнее какие параметры?
0
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,071
08.05.2015, 08:33 #4
Сперва надо разобраться - выполняется ли код в switch?
Integer.parseInt(arg0.getTag().toString()) чему равно, и равно ли 0 или 1? И если есть getTag, то где setTag?
Ставьте в код Log.d, тогда 90% вопросов отпадет.
Чтобы отобразить данные о кафе, нужно определить какое кафе выбрано - List[position] и передать параметр в интенте.
0
Pablito
2534 / 2013 / 627
Регистрация: 12.05.2014
Сообщений: 7,068
Завершенные тесты: 1
08.05.2015, 08:33 #5
public void onListItemClick(AdapterView<?> arg0, View arg1, int position, long id) {
тут не хватает @Override, разьве нет?

switch (Integer.parseInt(arg0.getTag().toString()))
зачем так делать ? в метод передается параметр int position это и есть позиция итема вв листе

начини с того что бы перед switch выводило что-то в консоль - так будет понятно вообще попадает ли в этот метод
0
azamatik_27
0 / 0 / 0
Регистрация: 07.05.2015
Сообщений: 6
08.05.2015, 09:01  [ТС] #6
можете полностью правильный код скинуть, а то что то я не понял
0
Pablito
2534 / 2013 / 627
Регистрация: 12.05.2014
Сообщений: 7,068
Завершенные тесты: 1
08.05.2015, 09:05 #7
Не срабатывает событие OnListItemClick
0
azamatik_27
0 / 0 / 0
Регистрация: 07.05.2015
Сообщений: 6
08.05.2015, 09:33  [ТС] #8
Я сделал так, а толку ноль



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
import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
 
public class ActivityKafe extends ListActivity implements AdapterView.OnItemClickListener {
 
    String[] List = new String[] {
            "Кафе «Alligator Green»",
             "Кафе «Чайхона ресто»",
             "Кафе «Кён Бок Кун»",
             "Кафе «Furusato»",
             "Кафе «Силла»",
             "Кафе «Salon de Te»",
             "Пиццерия «New York Pizza»",
             "Кафе «Sushi Room»",
             "Кофейня «Adriano»",
             "Кафе «Центр Плова»",
             "Кафе-Бар «Одноклассники»",
             "Кафе-Бистро «Москва»",
             "Кафе «Dream Bar»",
             "Кафе «Сере»",
             "Кафе «Деревяшка»",
             "Кафе «Арзу Lounge»",
             "Кафе «Манты Бар»",
             "Кафе-Бар «Navigator»",
             "Кафе «Фаиза»",
             "Кафе «Дияр»",
             "Кафе «Ландау»",
             "Кофейня Coffee",
    };
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.kafe);
        
        
        
        setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, List));
    }
    
    
        
        
        
        
        
      
 
    @Override
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
        // TODO Auto-generated method stub
        
        switch (Integer.parseInt(arg1.getTag().toString())) {
        case 0:
            Intent intent = new Intent(this, ActivityKino.class);
            startActivity(intent);
        break;
        case 1:
            Intent intent2 = new Intent(this, ActivityClub.class);
            startActivity(intent2);
        break;
        
    }
    }
 }
0
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,071
08.05.2015, 09:56 #9
Я выше писал, Integer.parseInt(arg1.getTag().toString()) чему равно? Как об стенку горохом.

Добавлено через 4 минуты
Java
1
2
3
4
5
6
    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {
        super.onListItemClick(l, v, position, id);
        Toast.makeText(getApplicationContext(),
                "Вы выбрали " + l.getItemAtPosition(position).toString(), Toast.LENGTH_SHORT).show();
    }
0
azamatik_27
0 / 0 / 0
Регистрация: 07.05.2015
Сообщений: 6
08.05.2015, 10:25  [ТС] #10
а чему оно может быть равно? похоже я нуб
0
azamatik_27
0 / 0 / 0
Регистрация: 07.05.2015
Сообщений: 6
12.05.2015, 09:17  [ТС] #11
Я извиняюсь никто не сможет написать правильный код? Я много вар-тов перепробовал, ничего не выходит. Буду чрезмерно благодарен
0
12.05.2015, 09:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.05.2015, 09:17
Привет! Вот еще темы с ответами:

Обновление данных Activity при нажатии на кнопку - Программирование Android
Приветствую всех. Проблема такая: необходимо обновлять данные(ImageView, TextView и т.п.) в Activity при нажатии на кнопку. Создаю...

При нажатии на пункт меню открыть новое активити - Программирование Android
Как сделать на андроид 4.0 чтобы при нажатии на пункт меню открывалось новое активити? Всплывающий Toast я смог сделать. но надо сделать...

Выполнить запрос к БД при нажатии на элемент в ListView и заполнить данными другой ListView - C++ Builder БД
Подскажите пожалуйста как сделать в RadStudio, что бы при нажатии на одну строку выполнялся запрос в БД, и результат записывался в чистый...

нужно,чтоб при нажатии на пункт меню "Справка" появлялось новое окошко (форма) с информацией об авторе и программе - Visual Basic
Мне нужно,чтоб при нажатии на пункт меню &quot;Справка&quot; появлялось новое окошко (форма) с информацией об авторе и программе.Но как осуществить...


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

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

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