Soru & Cevap

Android Gridview Sorunu?

23.10.2015 - 04:48

Merhabalar arkadaşlar. Uygulamada 2 sütunlu bir gridview kullanıyorum. Bu gridview'e 2 satırı görünecek şekilde yükseklik verdim. Yani bir bakışta gridview'in 4 elemanı görünüyor. Altta kalan elemanı görmek için gridviewi yukarı kaydırmam gerekiyor. Gridview i yukarı kaydırınca elemanlarda karışma oluyor. Aşağıda kalan eleman ismi farklı oluyor, Normalde aşağıda kalan eleman 7 olması gerekirken 1 oluyor. Resime de bakabilirsiniz. Bu sorunu nasıl çözebilirim acaba?

14 Görüntülenme

2 Cevap

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

Profile picture for user system61
system61
23.10.2015 - 07:25

Layout:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
    
    <LinearLayout
        android:id="@+id/imagetextview_linear"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="horizontal"  >
        
        <Button
            android:id="@+id/gridbutton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
        
    </LinearLayout>
    
</LinearLayout>

Class:

public class grid_adapter extends BaseAdapter {
    Context context; 
    ArrayList<String> Siparisler;
    public grid_adapter (Context context, ArrayList<String> gelenSiparisler){
        this.context=context;
        this.Siparisler=gelenSiparisler;
    }
    public int getCount() {
        // TODO Auto-generated method stub
        return Siparisler.size();
    }

    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return null;
    }
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return 0;
    }
    @SuppressLint("InflateParams") public View getView(int position, View convertView, ViewGroup parent) {
        // TODO Auto-generated method stub
        LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View gridView;
        if(convertView==null)
        {
            gridView =new View(context);

            gridView = inflater.inflate(R.layout.grid_layout, null);

            Button txtbtn = (Button) gridView.findViewById(R.id.gridbutton);
            txtbtn.setText(Siparisler.get(position));

        }
        else 
            gridView = (View) convertView;
        return gridView;
    }

}

 MainActivity:

gridview1.setAdapter(new grid_adapter(this, bilgiler));

Yukarıda yazdığım gibi grid_adapter isimli sınıfı kullanıyorum. bilgiler ismindeki arraylist 'i gride aktarıyorum. herşey çalışıyor ama gridi aşağı kaydırınca doğru veri yukarı gelmiyor. 

Profile picture for user ihsanemreyildirim
ihsanemreyildirim
23.10.2015 - 07:17

Inflate ettigin xml dosyasini bi atsana bakalim benimde basima boyle bisey gelmisti relative layout ile hallettim