Работа с ListView

Ответить
Frai
Сообщения: 34
Зарегистрирован: 24 дек 2013, 07:38

Работа с ListView

Сообщение Frai » 24 дек 2013, 07:44

Подскажите как можно сделать что бы по нажатию на 1 элемнт из 1 ListView он копировался во 2 ListView?

Аватара пользователя
alexmedv
Сообщения: 29
Зарегистрирован: 29 май 2013, 12:55

Re: Работа с ListView

Сообщение alexmedv » 24 дек 2013, 09:51

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

Frai
Сообщения: 34
Зарегистрирован: 24 дек 2013, 07:38

Re: Работа с ListView

Сообщение Frai » 24 дек 2013, 13:36

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

вот код события нажатия на элемент:

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

lvLeftAlredyUnits.setOnItemClickListener(new   OnItemClickListener(){
            public  void   onItemClick( AdapterView<?> parent,   View view ,
                   int position,   long id )   {
            	

                  fillList2();
            	
            
            }
        } );

код функции fillList2();

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

                        ArmyAdpter adapter1 = new ArmyAdpter(Units,  
					this);  
		  lvRightHeveUnit.setAdapter(adapter1);
код адаптера

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

  
	  private ArrayList<Person> friends;  
	  private Context c;  
	  
	  public ArmyAdpter(ArrayList<Person> friends, Context c) {  
	    this.friends = friends;  
	    this.c = c;  
	  } 
	  
	  
	  public int getCount() {  
	    return friends.size();  
	  }  
	  
	  public Person getItem(int position) {  
	    return friends.get(position);  
	  }  
	  
	  public long getItemId(int position) {  
	    return position;  
	  }  
	  
	  // Самый главный метод, который нужно переопределить - необходимо  вернуть готовый к отображению на позицию position объект класса View.  
	  // convertView - кэшированный View, который стоит использовать  повторно  
	 
	  public View getView(int position, View convertView, ViewGroup parent)  
	{  
	    if (convertView == null)  
	      convertView = LayoutInflater.from(c).inflate(  
	          R.layout.listitim_left, null); // таким образом мы получаем объект LayoutInflater из объекта Context.  
	  
	    fillView(convertView, position);  
	  
	    return convertView;  
	  }  
	  
	  private void fillView(View v, int position) {  
	    final Person p = getItem(position);  
	      
	    // name  
	    TextView tvUnitName= (TextView) v.findViewById(R.id.tvUnitName);  
	    tvUnitName.setText(p.getName().toString());  
	  
	     
	  }


Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Работа с ListView

Сообщение Foenix » 24 дек 2013, 13:49

нет гадалок, разгадывать ваш код без логов об ошибке. А если вы не будете туда смотреть сами, то программистом вам не быть. Вылетает, значит смотреть нужно не в небо, а в лог. Там все напиисано, там - адрес ошибки и так далее.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Frai
Сообщения: 34
Зарегистрирован: 24 дек 2013, 07:38

Re: Работа с ListView

Сообщение Frai » 25 дек 2013, 10:37

Я разобрался в чём ошибка только вот элемент коируется только 1 раз как можно сделать что бы элемент копировался многократно? желательно пример кода.

Ответить