folder Tahribat.com Forumları
linefolder Android - IOS Programlama
linefolder Android Custom Adapter İçerisinde Fragment Sorunu



Android Custom Adapter İçerisinde Fragment Sorunu

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    camarade
    ontedi
    ontedi's avatar
    Kayıt Tarihi: 04/Eylül/2005
    Erkek

    Arkadaşlar merhaba, işin içinden çıkamadım.

    Özetle şöyle anlatayım. Kategorileri yüklediğim bir custom adapter mevcut bu çalışıyor.

        public View getView(int position, View convertView, ViewGroup parent)
        {
            if (convertView == null)
            {
                LayoutInflater layoutInflater = (LayoutInflater) getContext().getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
                convertView = layoutInflater.inflate(R.layout.video_kategorileri_item, null, true);
            }
    
            final video_kategorileri_json entity = getItem(position);
            final String strVideo_Kategori_ID = entity.getVideo_kategori_ID();
            final String strKategori = entity.getKategori();
            final String strOzet = entity.getOzet();
            String strArkaplan_Renk_Kodu = entity.getArkaplan_renk_kodu();
            final String strMeta_Ozet = entity.getMeta_ozet();
            final String strToplam_Video = entity.getToplam_video();
            final String strResim_Orta = entity.getResim_orta();
    
            FrameLayout flKatman = (FrameLayout) convertView.findViewById(R.id.flKatman);
            flKatman.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    FragmentManager fm = ((FragmentActivity)context).getSupportFragmentManager();
                    FragmentTransaction ft = fm.beginTransaction();
                    videolar_activity fragment = new videolar_activity();
                    ft.add(R.id.llKapsul, fragment, "tagVideolarFragment");
                    ft.commit();
                }
            });
            return convertView;
        }


    onClick olayında fragment oluşturup diğer fragmente geçiş yapmak istiyorum fakat orası hiç işlemiyor

            FrameLayout flKatman = (FrameLayout) convertView.findViewById(R.id.flKatman);
            flKatman.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
    TastyToast.makeText(getContext(), strVideo_Kategori_ID + " - " + strKategori, TastyToast.LENGTH_LONG, TastyToast.SUCCESS);;
                }
            });

    Şeklinde yaptığımda ise Toast ile ekrana değerleri uyarı şeklinde veriyor. Fakat fragment oluşturmuyor. Umarım anlatabilmişimdir. Şimdiden teşekkürler.

     


    Matematikçi ve Yazılımcı. http://www.ontedi.com ve http://www.cizgi.site Siteme beklerim herkesi.
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    shock56
    shock56's avatar
    Kayıt Tarihi: 31/Mart/2007
    Erkek

    Hocam FragmentManager sınıfını onClick metodu içinde değil de activite veya fragment içinde tanımlayıp başlangıç değeri olarak gönderirsen sorun yaşamayacağını düşünüyorum. 

    public class CustomAdaptor extends ArrayAdapter<Item>{
       
    	Context mContext;
        FragmentManager mFragmentManager;
    
        public CustomAdaptor(Context context, ArrayList<Item> kullaniciList, FragmentManager fragmentManager) {
            super(context, 0, kullaniciList);
            mContext = context;
            mFragmentManager = fragmentManager;
        }
    	
    	......
    }
    
    
    
    
    public class MainActivity extends AppCompatActivity {
    
        ArrayList<Item> kullaniciList;
        ListView listView;
        private static CustomAdapter adapter;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
           ....
    	   
    		FragmentManager fm = ((FragmentActivity)context).getSupportFragmentManager();
    
            adapter= new CustomAdaptor(getApplicationContext(),kullaniciList,fm); //conten, liste ve fragmentManager başlangıç olarak gönderildi. 
    
            listView.setAdapter(adapter);
            listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                    ....
                }
            });
    		
        }
    	
    	.......
    }



  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    MhmdAlmz
    MhmdAlmz's avatar
    Kayıt Tarihi: 09/Ağustos/2015
    Erkek

    Çalışmıyordan kasıt hata mı veriyor abi ? Kodda ben absürt bir durum göremedim. Birde getView methodu RecyclerView de mi çalışıyor yokca BaseAdapter demi ? Hani Class'ı Extend ettin ?

    Birde tastToast baya hoşmuş :) Kaptım


    Andolsun kuşluk vaktine ve dindiği zaman o geceye ki, Rabbin sana veda etmedi ve darılmadı! Ve kesinlikle senin için sonu önünden (ahiret dünyadan) daha hayırlıdır. ileride Rabbin sana verecek de hoşnut olacaksın! O, seni bir yetim iken barındırmadı mı? Seni, yol bilmez iken (doğru) yola koymadı mı? Seni bir yoksul iken zengin etmedi mi? Öyle ise, sakın yetime kahretme (onu horlama)! El açıp isteyeni de azarlama! Fakat Rabbinin nimetini anlat da anlat!
Toplam Hit: 1518 Toplam Mesaj: 3
android custom adapter in create fragment