|
@@ -34,6 +34,7 @@ import com.cooleshow.student.bean.CountOfUnreadBean;
|
|
|
import com.cooleshow.student.bean.HelpCenterContentBean;
|
|
|
import com.cooleshow.student.bean.HomeHotMusicSheetBean;
|
|
|
import com.cooleshow.student.bean.HomeHotMusicSheetItemBean;
|
|
|
+import com.cooleshow.student.bean.HomeHotNewsBean;
|
|
|
import com.cooleshow.student.bean.HomeLiveAndVideoBean;
|
|
|
import com.cooleshow.student.bean.HomeStyleBean;
|
|
|
import com.cooleshow.student.bean.HotAlbumBean;
|
|
@@ -74,7 +75,7 @@ import static com.cooleshow.student.constants.CourseConstants.PIANO_ROOM_COURSE;
|
|
|
/**
|
|
|
* Author by pq, Date on 2022/8/29.
|
|
|
*/
|
|
|
-public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBinding, HomePresenter> implements HomeContract.HomeView, View.OnClickListener {
|
|
|
+public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBinding, HomePresenter> implements HomeContract.HomeView, View.OnClickListener, TalentStyleFragment.OnEventListener, HotNewsFragment.OnEventListener {
|
|
|
public static final int MAX_HOT_MUSIC_LIST_PAGE = 3;//热门曲目一页最大条数
|
|
|
private Banner banner;
|
|
|
private SmartRefreshLayout refreshLayout;
|
|
@@ -174,7 +175,9 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
|
|
|
|
|
|
ArrayList<Fragment> bottomFragments = new ArrayList<>();
|
|
|
mTalentStyleFragment = new TalentStyleFragment();
|
|
|
+ mTalentStyleFragment.setOnEventListener(NewHomeFragment.this);
|
|
|
mHotNewsFragment = new HotNewsFragment();
|
|
|
+ mHotNewsFragment.setOnEventListener(NewHomeFragment.this);
|
|
|
bottomFragments.add(mTalentStyleFragment);
|
|
|
bottomFragments.add(mHotNewsFragment);
|
|
|
HomeBottomPageAdapter homeBottomPageAdapter = new HomeBottomPageAdapter(this.getChildFragmentManager(), bottomFragments);
|
|
@@ -245,8 +248,8 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
|
|
|
presenter.appHome();
|
|
|
presenter.userAccountPage();
|
|
|
presenter.getHotMusicSheetList();
|
|
|
- presenter.getTalentStyle();
|
|
|
presenter.getRecommendTalentList();
|
|
|
+ refreshBottomData();
|
|
|
});
|
|
|
|
|
|
mHomeVideoCourseAdapter.setOnItemClickListener((adapter, view, position) -> {
|
|
@@ -358,13 +361,21 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
|
|
|
presenter.appHome();
|
|
|
//获取课程信息
|
|
|
presenter.queryLiveAndVideo();
|
|
|
- //获取达人风采
|
|
|
- presenter.getTalentStyle();
|
|
|
+ refreshBottomData();
|
|
|
//获取推荐达人列表
|
|
|
presenter.getRecommendTalentList();
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private void refreshBottomData() {
|
|
|
+ if (mTalentStyleFragment != null) {
|
|
|
+ mTalentStyleFragment.refresh();
|
|
|
+ }
|
|
|
+ if (mHotNewsFragment != null) {
|
|
|
+ mHotNewsFragment.refresh();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public void appHomeSuccess(AppHomeBean appHomeBean) {
|
|
|
if (isDetached()) {
|
|
@@ -377,14 +388,6 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
|
|
|
bindBanner(appHomeBean.banner);
|
|
|
//后台配置menu
|
|
|
initMenu(appHomeBean.appMenu);
|
|
|
- //热门资讯
|
|
|
- bindHotNews(appHomeBean.information);
|
|
|
- }
|
|
|
-
|
|
|
- private void bindHotNews(List<AppHomeBean.ItemBean> information) {
|
|
|
- if (mHotNewsFragment != null) {
|
|
|
- mHotNewsFragment.setData(information);
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -517,9 +520,9 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void getStylePageSuccess(HomeStyleBean data) {
|
|
|
+ public void getStylePageSuccess(int page, HomeStyleBean data) {
|
|
|
if (mTalentStyleFragment != null) {
|
|
|
- mTalentStyleFragment.setData(data);
|
|
|
+ mTalentStyleFragment.setData(page, data);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -612,6 +615,26 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ public void getHotNewsSuccess(int page, HomeHotNewsBean homeHotNewsBean) {
|
|
|
+ //获取热门资讯Success
|
|
|
+ bindHotNews(page, homeHotNewsBean);
|
|
|
+ }
|
|
|
+
|
|
|
+ private void bindHotNews(int page, HomeHotNewsBean information) {
|
|
|
+ if (mHotNewsFragment != null) {
|
|
|
+ mHotNewsFragment.setData(page, information);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void getHotNewsError(int page) {
|
|
|
+ //获取热门资讯Error
|
|
|
+ if (mHotNewsFragment != null) {
|
|
|
+ mHotNewsFragment.getHotNewsError(page);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
public void onClick(View v) {
|
|
|
int id = v.getId();
|
|
|
|
|
@@ -796,4 +819,19 @@ public class NewHomeFragment extends BaseMVPFragment<FragmentNewHomeLayoutBindin
|
|
|
bottomTabValueAnimator = null;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ //获取达人风采列表
|
|
|
+ @Override
|
|
|
+ public void getStyleData(int page) {
|
|
|
+ if (presenter != null) {
|
|
|
+ presenter.getTalentStyle(page);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void getNewsData(int page) {
|
|
|
+ if (presenter != null) {
|
|
|
+ presenter.getHotNewsPage(page);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|