Administrator
2021-11-06 9178a17fda334ae4fb1df7ddefcdae9bbc40400b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
package com.duqing.missions.ui.main.home;
 
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
 
import androidx.annotation.Nullable;
import androidx.lifecycle.Observer;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
 
import com.duqing.missions.base.fragments.BaseLoadPageFragment;
import com.duqing.missions.data.BasePageResult;
import com.duqing.missions.databinding.FragmentHomeBinding;
import com.duqing.missions.ui.login.view.LoginActivity;
import com.duqing.missions.ui.main.home.adapter.HomeClassifyAdapter;
import com.duqing.missions.ui.main.home.adapter.MissionAdapter;
import com.duqing.missions.ui.main.home.adapter.MissionTopAdapter;
import com.duqing.missions.ui.main.home.model.Classify;
import com.duqing.missions.ui.main.home.model.MissionDesc;
 
import java.util.List;
 
public class HomeFragment extends BaseLoadPageFragment<FragmentHomeBinding,HomeViewModel,MissionAdapter, BasePageResult<String>> {
 
    final String TAG = "HomeFragment";
 
 
    @Override
    public void initViews() {
        super.initViews();
        binding.textSearch.setOnClickListener(v -> startActivity(new Intent(getContext(), LoginActivity.class)));
        final  TextView textView = binding.textRecommend;
        RecyclerView recyclerClassify = binding.recyclerClassify;
        RecyclerView recyclerTop = binding.recyclerTop;
        LinearLayoutManager layoutManager = new LinearLayoutManager(getContext());
        layoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
        recyclerClassify.setLayoutManager(layoutManager);
        HomeClassifyAdapter homeClassifyAdapter = new HomeClassifyAdapter();
        recyclerClassify.setAdapter(homeClassifyAdapter);
        recyclerTop.setLayoutManager(new GridLayoutManager(getContext(),3));
        final MissionTopAdapter topAdapter = new MissionTopAdapter();
        recyclerTop.setAdapter(topAdapter);
        viewModel.getTopMissions().observe(getViewLifecycleOwner(), new Observer<List<MissionDesc>>() {
            @Override
            public void onChanged(List<MissionDesc> missionDescs) {
                smartRefresh.finishRefresh();
                topAdapter.setData(missionDescs);
            }
        });
        viewModel.getRecommendMissions().observeForever(new Observer<List<MissionDesc>>() {
            @Override
            public void onChanged(List<MissionDesc> missionDescs) {
                smartRefresh.finishLoadMore();
                adapter.setData(missionDescs);
            }
        });
        viewModel.getClassifies().observeForever(new Observer<List<Classify>>() {
            @Override
            public void onChanged(List<Classify> cliassifies) {
                homeClassifyAdapter.setData(cliassifies);
            }
        });
    }
 
    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
        Log.e(TAG,"onCreateView");
        return super.onCreateView(inflater, container, savedInstanceState);
    }
 
    @Override
    public void onResume() {
        super.onResume();
        Log.e(TAG,"onResume");
    }
 
    @Override
    public void onPause() {
        super.onPause();
        Log.e(TAG,"onPause");
    }
 
    @Override
    public void onStop() {
        super.onStop();
        Log.e(TAG,"onStop");
    }
 
    @Override
    public void onDestroyView() {
        super.onDestroyView();
        Log.e(TAG,"onDestroyView");
    }
}