ExpandableListView с фрагментом - PullRequest
0 голосов
/ 07 декабря 2018

Я использую TabbedActivity и создал еще один Fragment, чтобы показать мой пользовательский ExpandableListView в нем.Но даже я добавил свой ExpandableListView, в TabbedActivity он не отображается.Я пытался что-то, но это не удалось.Что мне нужно сделать, чтобы использовать его в Fragment?

Вот мой фрагмент Java-файла

public class second_fragment extends Fragment {

    ExpandableListView expListView;
    ArrayList<String> basliklar;
    HashMap<String , ArrayList<String>> icerik;
    ExpListAdapter adapter;

    public second_fragment() {
        // Required empty public constructor
    }

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        FillMenu();
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_second, container, false);
        // Inflate the layout for this fragment
        return view;
    }

    @Override
    public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        expListView = (ExpandableListView) getView().findViewById(R.id.exp_list);
        adapter = new ExpListAdapter(getActivity(), basliklar , icerik);
        expListView.setGroupIndicator(null);
        expListView.setAdapter(adapter);

        expListView.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {

            @Override
            public boolean onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id) {
                String child_name = (String) adapter.getChild(groupPosition , childPosition);
                int childID = (int) adapter.getChildId(groupPosition , childPosition);
                int groupID = groupPosition;
                if(groupID == 0 && child_name == "Destek Fişi"){
                    Intent intent = new Intent(getContext() , DestekFisi.class);
                    startActivity(intent);
                }
                else if(groupID == 0 && child_name == "Servis Fişi"){
                    Intent intent = new Intent(getContext() , ServisFisi.class);
                    startActivity(intent);
                }
                return false;
            }
        });
    }

    public void FillMenu(){
        basliklar = new ArrayList<String>();
        icerik = new HashMap<String , ArrayList<String>>();

        basliklar.add("Hizmet ve Destek");
        basliklar.add("Proje Yönetimi");

        ArrayList<String> hizmetVeDestek = new ArrayList<String>();
        hizmetVeDestek.add("Destek Fişi");
        hizmetVeDestek.add("Servis Fişi");

        ArrayList<String> proje = new ArrayList<String>();
        proje.add("Talep Fişi");
        proje.add("Talep Onayı");
        proje.add("Yazılım");
        proje.add("Proje");

        icerik.put(basliklar.get(0) , hizmetVeDestek);
        icerik.put(basliklar.get(1) , proje);
    }
}

А вот XML моего фрагмента

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".second_fragment"
    android:orientation="vertical">

    <ExpandableListView
        android:id="@+id/exp_list"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

    </ExpandableListView>

</FrameLayout>
...