2 listview в одном Activity

Интерфейс, диалоги, темы, стили, меню
Ответить
SwitchOFF
Сообщения: 8
Зарегистрирован: 10 окт 2013, 17:34

2 listview в одном Activity

Сообщение SwitchOFF » 16 дек 2013, 00:09

Всем привет!
У меня есть 2 списка, пытаюсь использовать один обработчик на оба.
Подскажите, как определять правильно ID каждого из списков?


Инициализирую так:

Код: Выделить всё

	OnTabChangeListener TabChange = new OnTabChangeListener() {
			
			@Override
			public void onTabChanged(String tab) {
				
				if(tab.equals("t2"))
				{
					String programms = index.GetData("cmd.php?uid="+getIntent().getStringExtra("uid")+"&action=getrun&dest=1");
					String[] programms_array=programms.trim().split("\\|",-1);					
				    ArrayAdapter<String> adapter = new ArrayAdapter<String>(_this,android.R.layout.simple_list_item_1,programms_array);									   				    	    
				    listView1.setAdapter(adapter);
				}

  			    if(tab.equals("t3")) 
			    {																		
					String[] names = { "C","D" };										
				    ArrayAdapter<String> adapter = new ArrayAdapter<String>(_this,android.R.layout.simple_list_item_1, names);									   				    	    
				    listView2.setAdapter(adapter);					
				}
				
			}
		};		
Пытался по view id вылавливать, но каждый раз он почему-то новый, и equals, написанные ниже в коде, не работают правильно

Код: Выделить всё


		OnItemClickListener ItemClick = new OnItemClickListener() 
		{
			@Override
			public void onItemClick(AdapterView<?> parent, View view, int position, long id)
			{		
				
				Toast.makeText(getBaseContext(),parent.getAdapter().toString(), Toast.LENGTH_LONG).show();
				
				if(parent.getAdapter().toString().equals("android.widget.ArrayAdapter@45fd9568"))
				{
					Toast.makeText(getApplicationContext(),"run", Toast.LENGTH_LONG).show();
				}
				
				if(parent.getAdapter().toString().equals("android.widget.ArrayAdapter@45fd9568"))
				{
					Toast.makeText(getApplicationContext(),"explorer", Toast.LENGTH_LONG).show();
				}							
				
			}
		};

Вложения
scr2.png
scr2.png (155.97 КБ) 1863 просмотра
scr1.png
scr1.png (172.5 КБ) 1863 просмотра

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: 2 listview в одном Activity

Сообщение rezak90 » 16 дек 2013, 00:34

в идеале на каждый таб создаётся фрагмент и тогда не возникает вот таких накладок
раз зашли об идеалах, если у тебя на каждом табе используется лист и обработчик один и тот же то можно сделать абстрактный класс и в нём определить этот обработчик а потом наследоваться от этого абстрактного каждый фрагмент
R.id.team
Политика на форуме запрещена

Ответить