How can I disable all views inside the layout?

后端 未结 23 1286
一个人的身影
一个人的身影 2020-11-28 08:46

For example I have:



        
23条回答
  •  离开以前
    2020-11-28 09:26

    Use below recursive function to make your child views visible or gone. First argument is your parent view and second argument decides if you want childs of parent view visible or gone. true = visible false = gone

    private void layoutElemanlarininGorunumunuDegistir(View view, boolean gorunur_mu_olsun) {
        ViewGroup view_group;
        try {
            view_group = (ViewGroup) view;
            Sabitler.konsolaYazdir(TAG, "View ViewGroup imiş!" + view.getId());
        } catch (ClassCastException e) {
            Sabitler.konsolaYazdir(TAG, "View ViewGroup değilmiş!" + view.getId());
            return;
        }
    
        int view_eleman_sayisi = view_group.getChildCount();
        for (int i = 0; i < view_eleman_sayisi; i++) {
            View view_group_eleman = view_group.getChildAt(i);
            if (gorunur_mu_olsun) {
                view_group_eleman.setVisibility(View.VISIBLE);
            } else {
                view_group_eleman.setVisibility(View.GONE);
            }
            layoutElemanlarininGorunumunuDegistir(view_group_eleman, gorunur_mu_olsun);
        }
    }
    

提交回复
热议问题