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");
|
}
|
}
|