Turkcell | Geleceği Yazanlar

Soru & Cevap

listview+mysql+json

01.06.2014 - 03:10

Arkadaşlar merhaba.Burdaki eğitimlerden listview oluşturmayı öğrendim.çok fazla araştırma yapmama rağmen json ile listviewi buradaki adapter doldurma yöntemiyle nasıl dolduracağımı bulamadım.Bildiğiniz bir döküman var mı?Paylaşırsanız sevinirim.

2959 Görüntülenme

2 Cevap

Ahmet Burak Demirkoparan
03.06.2014 - 15:21

kardeşim gson isimli googlenin json sınıfı var çek onu projene exampleside var indirdiğin yerde jsonarrayi parse edip pojo class yaz mesela student gibi.

public class student{

private string name,surname,email,tel;

public student(){}

getter...

setter..

}

http://stackoverflow.com/questions/3527264/how-to-create-a-pojo burdan ne olduguna bakabilirsin.

daha sonra jsonu parse edip ArrayList<Student> şeklinde bir collection tutarsın pojo türünden.

ListViewin customadapterine bu arraylisti parametre olarak geçeceksin içerdede direk getterli methodlardan değerleri alıp getView kısmında basacaksın.

örnek koyayım.jsonu decode edip arrayliste yükledikten sonra arrayadapterinin içi şöyle olacak.

[code]

public class CalendarDetailAdapter extends BaseAdapter {

    Activity activity;
    List<CalendarDetail> calendarDetailList;

    public CalendarDetailAdapter(Activity activity,
            List<CalendarDetail> calendarDetailList) {
        // TODO Auto-generated constructor stub
        this.activity = activity;
        this.calendarDetailList = calendarDetailList;
    }

    @Override
    public int getCount() {
        // TODO Auto-generated method stub
        return calendarDetailList.size();
    }

    @Override
    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return calendarDetailList.get(position);
    }

    @Override
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return position;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View vi = convertView;
        if (vi == null) {
            LayoutInflater inflater = (LayoutInflater) activity
                    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            vi = inflater.inflate(R.layout.calendardetail_row, null);
        }
        CalendarDetail calendarDetail = calendarDetailList.get(position);
        TextView dayTV = (TextView) vi.findViewById(R.id.dayTV);
        TextView monthTV = (TextView) vi.findViewById(R.id.monthTV);
        TextView timeIntervalTV = (TextView) vi
                .findViewById(R.id.timeIntervalTV);
        TextView calendarDetailTV = (TextView) vi
                .findViewById(R.id.calendarDetailTV);
        dayTV.setText(calendarDetail.getDay());
        timeIntervalTV.setText(calendarDetail.getTimeInterval());
        calendarDetailTV.setText(calendarDetail.getCalendarDetail());
        monthTV.setText(Config.mConvertMonthNumberofString(calendarDetail
                .getMonth()));
        return vi;
    }

    public void clear() {
        calendarDetailList.clear();
    }
}

[/code]

constructurda pojo classtan oluşmuş collectionu alıp getViewde nasıl set ettiğimi görebilirsin componentlere.

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Hakan
04.06.2014 - 00:19
bu iyi oldu.teşekkürler
Bekir Dursun
01.06.2014 - 11:11

Buradan faydalanabilirsin,

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Hakan
01.06.2014 - 13:17
teşekkürler

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.