Страница 1 из 1

fragment list view

Добавлено: 06 май 2015, 11:58
Sergei Popov
У меня есть framelayout в который я заливаю 3 разный фрагмента, в одном из них есть лист, для использования которого я пользуюсь simpleadapter и свой listview, в листе есть кнопка и текст
вопрос: как повесить setOnClickLisner на кнопку?
спасибо

Re: fragment list view

Добавлено: 06 май 2015, 12:12
doter.ua
в адаптере myBtn.setOnCl.. (new OnCl..)

Re: fragment list view

Добавлено: 06 май 2015, 12:52
Sergei Popov
Спасибо а я после адаптера писал походу вчера переработал. спасибо за ответ!

Re: fragment list view

Добавлено: 06 май 2015, 13:02
Sergei Popov
сделал, апп падает...

Re: fragment list view

Добавлено: 06 май 2015, 13:05
doter.ua
Sergei Popov писал(а):сделал, апп падает...
логи?

Re: fragment list view

Добавлено: 06 май 2015, 13:12
Sergei Popov
падает по середине когда нужно показывать этот лист

Re: fragment list view

Добавлено: 06 май 2015, 13:16
Sergei Popov
что то мне подсказывает что это из за new View.OnClickLisner
pulic void onClick(view v) так как это внутри фрагмента

Re: fragment list view

Добавлено: 06 май 2015, 13:35
doter.ua
Sergei Popov писал(а):что то мне подсказывает что это из за new View.OnClickLisner
pulic void onClick(view v) так как это внутри фрагмента
Интуиция для гуманитариев, где логи и фулл код адаптера?
ЗЫ используй кастомный адаптер

Re: fragment list view

Добавлено: 06 май 2015, 14:33
Sergei Popov
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_list_view, null);



String[] from = {"date","Type"};
int[] to = {R.id.btnDate,R.id.tvStage};
listview = (ListView) v.findViewById(R.id.listView);
adapter = new SimpleAdapter(getActivity(),arrayMapVacationAndDiseaseObjects,R.layout.list_vacation_and_disease,from,to);

btnData = (Button)v.findViewById(R.id.btnDate);
btnData.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

// dataDialog();

}

Re: fragment list view

Добавлено: 06 май 2015, 14:36
Sergei Popov
без btnData.setOnClickListener(new View.OnClickListener() {
все ок, с ним выбивает

Re: fragment list view

Добавлено: 06 май 2015, 16:17
doter.ua
Sergei Popov писал(а):без btnData.setOnClickListener(new View.OnClickListener() {
все ок, с ним выбивает
Тут нужен кастомный адаптер http://startandroid.ru/ru/uroki/vse-uro ... apter.html
онклик пишется в классе адаптера.

Re: fragment list view

Добавлено: 06 май 2015, 20:45
Sergei Popov
я забил и сделал свой адаптер, огромное спасибо за помощь
вот код если кому поможет:

public class ListAdapter extends BaseAdapter {

private LayoutInflater inflater;
private Context context;
private ArrayList<VacationAndDiseaseObject> vacationAndDiseaseObjects;

public ListAdapter (LayoutInflater inflater, Context context, ArrayList<VacationAndDiseaseObject> vacationAndDiseaseObjects){
this.inflater = inflater;
this.context = context;
this.vacationAndDiseaseObjects = vacationAndDiseaseObjects;

}



@Override
public int getCount() {
return vacationAndDiseaseObjects.size();
}

@Override
public Object getItem(int position) {
return vacationAndDiseaseObjects.get(position);
}

@Override
public long getItemId(int position) {
return position;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {


convertView = inflater.inflate(R.layout.list_vacation_and_disease,parent,false);

buttonEvents(position,convertView);


TextView tvStage = (TextView) convertView.findViewById(R.id.tvStage);
tvStage.setText(vacationAndDiseaseObjects.get(position).getType());



return convertView;
}