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> { 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>() { @Override public void onChanged(List missionDescs) { smartRefresh.finishRefresh(); topAdapter.setData(missionDescs); } }); viewModel.getRecommendMissions().observeForever(new Observer>() { @Override public void onChanged(List missionDescs) { smartRefresh.finishLoadMore(); adapter.setData(missionDescs); } }); viewModel.getClassifies().observeForever(new Observer>() { @Override public void onChanged(List 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"); } }