From 8c6d07edf896949af0a5d80d3b077e2c545b77d2 Mon Sep 17 00:00:00 2001 From: LAPTOP-4C7T0D8N\lenovo <15805828761@163.com> Date: Sun, 18 Mar 2018 23:52:58 +0800 Subject: [PATCH] no message --- app/src/main/AndroidManifest.xml | 16 ++++++++-------- app/src/main/java/com/shunzhi/parent/adapter/ContextAdapter.java | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ app/src/main/java/com/shunzhi/parent/api/Consult.java | 13 ++++++++++--- app/src/main/java/com/shunzhi/parent/bean/channel/ChannelBean.java | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ app/src/main/java/com/shunzhi/parent/bean/channel/ChannelContextBean.java | 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ app/src/main/java/com/shunzhi/parent/bean/channel/ChannelInfo.java | 42 ++++++++++++++++++++++++++++++++++++++++++ app/src/main/java/com/shunzhi/parent/contract/consult/ConsultContract.java | 20 +++++++++++++++----- app/src/main/java/com/shunzhi/parent/contract/consult/consultone/ConsultOneContract.java | 8 ++++---- app/src/main/java/com/shunzhi/parent/model/consult/ConsultModel.java | 14 ++++++++++++-- app/src/main/java/com/shunzhi/parent/model/consult/consultone/ConsultOneModel.java | 10 +++++----- app/src/main/java/com/shunzhi/parent/presenter/consult/ConsultPresenter.java | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++-------------- app/src/main/java/com/shunzhi/parent/presenter/consult/consultone/ConsultOnePresenter.java | 7 ++++--- app/src/main/java/com/shunzhi/parent/ui/fragment/ConsultFragment.java | 82 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------ app/src/main/java/com/shunzhi/parent/ui/fragment/StartFragment.java | 16 ++++++++++++++-- app/src/main/java/com/shunzhi/parent/ui/fragment/consult/ConsultOneLevelFragment.java | 2 +- app/src/main/res/layout/fragment_zi_xun.xml | 13 +++++++++++-- app/src/main/res/layout/layout_consult_content.xml | 38 +++++++++++++++++++++++--------------- 17 files changed, 510 insertions(+), 76 deletions(-) create mode 100644 app/src/main/java/com/shunzhi/parent/adapter/ContextAdapter.java create mode 100644 app/src/main/java/com/shunzhi/parent/bean/channel/ChannelBean.java create mode 100644 app/src/main/java/com/shunzhi/parent/bean/channel/ChannelContextBean.java create mode 100644 app/src/main/java/com/shunzhi/parent/bean/channel/ChannelInfo.java diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b21014e..1c4765b 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -64,17 +64,17 @@ android:name="com.amap.api.v2.apikey" android:value="1d130afb822d8a1019e6592cbaf10bcc" /> - + - - - - + @@ -94,9 +94,9 @@ android:name=".ui.activity.binding.SelectSchoolActivity" android:screenOrientation="portrait" android:windowSoftInputMode="adjustPan|stateHidden" /> - + + + { + Context context; + + public ContextAdapter(Context context) { + this.context = context; + } + + + @Override + public BaseRecyclerViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { + View view = LayoutInflater.from(context).inflate(R.layout.layout_consult_content, null); + return new MyViewHolder(view); + } + + private class MyViewHolder extends BaseRecyclerViewHolder { + TextView tvConsultTitle,tvConsultContent,tvPingLunNums,tvZhuanFaNums; + ImageView iv_consult; + + + public MyViewHolder(View view) { + super(view); + tvConsultContent=view.findViewById(R.id.tvConsultContent); + tvConsultTitle=view.findViewById(R.id.tvConsultTitle); + tvPingLunNums=view.findViewById(R.id.tvPingLunNums); + tvZhuanFaNums=view.findViewById(R.id.tvZhuanFaNums); + iv_consult=view.findViewById(R.id.iv_consult); + + } + + @Override + public void onBindViewHolder(final ChannelContextBean object, int position) { + tvConsultTitle.setText(object.getTitle()); + tvConsultContent.setText(object.getContent()); + Glide.with(context).load(object.getImage()).placeholder(R.color.xueqing_blue) + .into(iv_consult); + + + + + + } + + } + + + +} diff --git a/app/src/main/java/com/shunzhi/parent/api/Consult.java b/app/src/main/java/com/shunzhi/parent/api/Consult.java index 4d13bc1..8b74931 100644 --- a/app/src/main/java/com/shunzhi/parent/api/Consult.java +++ b/app/src/main/java/com/shunzhi/parent/api/Consult.java @@ -3,7 +3,10 @@ package com.shunzhi.parent.api; import com.google.gson.JsonObject; import io.reactivex.Observable; +import retrofit2.http.Field; +import retrofit2.http.FormUrlEncoded; import retrofit2.http.GET; +import retrofit2.http.POST; import retrofit2.http.Query; /** @@ -12,9 +15,13 @@ import retrofit2.http.Query; public interface Consult { - @GET("api/ParentService/GetAds") - Observable getBanners(@Query("position") String position); + @GET("/api/ParentService/GetAds") + Observable getBanners(@Query("position") String position, @Query("areaName") String areaName); - Observable getConsultContent(); + @FormUrlEncoded + @POST("/api/ParentService/GetChannelInfo") + Observable getConsultContent(@Field("areaName") String areaName, @Field("channel") int channel + , @Field("toFirstPage") int toFirstPage, @Field("pageIndex") int pageIndex); + } diff --git a/app/src/main/java/com/shunzhi/parent/bean/channel/ChannelBean.java b/app/src/main/java/com/shunzhi/parent/bean/channel/ChannelBean.java new file mode 100644 index 0000000..fcb8460 --- /dev/null +++ b/app/src/main/java/com/shunzhi/parent/bean/channel/ChannelBean.java @@ -0,0 +1,67 @@ +package com.shunzhi.parent.bean.channel; + +import java.io.Serializable; + +/** + * Created by lenovo on 2018/3/18. + */ + +public class ChannelBean implements Serializable { + private int id; + private String channelName; + private String channelImage; + private int orderById; + private String url; + + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getChannelName() { + return channelName; + } + + public void setChannelName(String channelName) { + this.channelName = channelName; + } + + public String getChannelImage() { + return channelImage; + } + + public void setChannelImage(String channelImage) { + this.channelImage = channelImage; + } + + public int getOrderById() { + return orderById; + } + + public void setOrderById(int orderById) { + this.orderById = orderById; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } + + @Override + public String toString() { + return "ChannelContextBean:{" + + ",id='" + id + '\'' + + ",channelName='" + channelName + '\'' + + ",channelImage='" + channelImage + '\'' + + ",orderById='" + orderById + '\'' + + ", url=" + url + + "}"; + } +} diff --git a/app/src/main/java/com/shunzhi/parent/bean/channel/ChannelContextBean.java b/app/src/main/java/com/shunzhi/parent/bean/channel/ChannelContextBean.java new file mode 100644 index 0000000..bcf7b16 --- /dev/null +++ b/app/src/main/java/com/shunzhi/parent/bean/channel/ChannelContextBean.java @@ -0,0 +1,108 @@ +package com.shunzhi.parent.bean.channel; + +import java.io.Serializable; + +/** + * Created by lenovo on 2018/3/18. + */ + +public class ChannelContextBean implements Serializable{ + private int id; + private String image; + private String title; + private String url; + private String content; + private int forwardingNum; + private int talkNum; + private int orderById; + private int isAds; + + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getImage() { + return image; + } + + public void setImage(String image) { + this.image = image; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } + + public String getContent() { + return content; + } + + public void setContent(String content) { + this.content = content; + } + + public int getForwardingNum() { + return forwardingNum; + } + + public void setForwardingNum(int forwardingNum) { + this.forwardingNum = forwardingNum; + } + + public int getTalkNum() { + return talkNum; + } + + public void setTalkNum(int talkNum) { + this.talkNum = talkNum; + } + + public int getOrderById() { + return orderById; + } + + public void setOrderById(int orderById) { + this.orderById = orderById; + } + + public int getIsAds() { + return isAds; + } + + public void setIsAds(int isAds) { + this.isAds = isAds; + } + + @Override + public String toString() { + return "ChannelContextBean:{" + + ",id='" + id + '\'' + + ",image='" + image + '\'' + + ",title='" + title + '\'' + + ",url='" + url + '\'' + + ",content='" + content + '\'' + + ",forwardingNum='" + forwardingNum + '\'' + + ",talkNum='" + talkNum + '\'' + + ",orderById='" + orderById + '\'' + + ", isAds=" + isAds + + "}"; + } + +} diff --git a/app/src/main/java/com/shunzhi/parent/bean/channel/ChannelInfo.java b/app/src/main/java/com/shunzhi/parent/bean/channel/ChannelInfo.java new file mode 100644 index 0000000..c1a0e58 --- /dev/null +++ b/app/src/main/java/com/shunzhi/parent/bean/channel/ChannelInfo.java @@ -0,0 +1,42 @@ +package com.shunzhi.parent.bean.channel; + +import com.share.mvpsdk.base.BaseModel; +import com.share.mvpsdk.base.entity.BaseEntity; +import com.shunzhi.parent.bean.ToolBean; + +import java.io.Serializable; +import java.util.List; + +/** + * Created by lenovo on 2018/3/18. + */ + +public class ChannelInfo implements Serializable { + private List channelContent; + private List subchannel; + + + public List getChannelContent() { + return channelContent; + } + + public void setChannelContent(List channelContent) { + this.channelContent = channelContent; + } + + public List getSubchannel() { + return subchannel; + } + + public void setSubchannel(List subchannel) { + this.subchannel = subchannel; + } + + @Override + public String toString() { + return "ChannelInfo{" + + ",subchannel='" + subchannel + '\'' + + ", channelContent=" + channelContent + + "}"; + } +} diff --git a/app/src/main/java/com/shunzhi/parent/contract/consult/ConsultContract.java b/app/src/main/java/com/shunzhi/parent/contract/consult/ConsultContract.java index d06eb6e..d252812 100644 --- a/app/src/main/java/com/shunzhi/parent/contract/consult/ConsultContract.java +++ b/app/src/main/java/com/shunzhi/parent/contract/consult/ConsultContract.java @@ -7,6 +7,8 @@ import com.share.mvpsdk.base.BasePresenter; import com.share.mvpsdk.base.IBaseFragment; import com.share.mvpsdk.base.IBaseModel; import com.shunzhi.parent.bean.GuangGaoBean; +import com.shunzhi.parent.bean.channel.ChannelBean; +import com.shunzhi.parent.bean.channel.ChannelContextBean; import java.util.List; @@ -18,23 +20,31 @@ import io.reactivex.Observable; public interface ConsultContract { - abstract class ConsultPresenter extends BasePresenter{ + abstract class ConsultPresenter extends BasePresenter { public abstract void getTools(LinearLayout linearLayout); - public abstract void getBanners(String position); + public abstract void getBanners(String position, String areaName); + + public abstract void getContextChannel(String areaName, int channel, int toFirstPage, int pageIndex); } - interface IConsultModel extends IBaseModel{ + interface IConsultModel extends IBaseModel { Observable getTools(); - Observable getBanners(String position); + Observable getBanners(String position, String areaName); + + Observable getContextChannel(String areaName, int channel, int toFirstPage, int pageIndex); } - interface IConsultView extends IBaseFragment{ + interface IConsultView extends IBaseFragment { void showTools(); void showBanners(List guangGaoBeanList); + + void showChannel(List list); + + void showContext(List list); } } diff --git a/app/src/main/java/com/shunzhi/parent/contract/consult/consultone/ConsultOneContract.java b/app/src/main/java/com/shunzhi/parent/contract/consult/consultone/ConsultOneContract.java index 4381ca6..79e8ea4 100644 --- a/app/src/main/java/com/shunzhi/parent/contract/consult/consultone/ConsultOneContract.java +++ b/app/src/main/java/com/shunzhi/parent/contract/consult/consultone/ConsultOneContract.java @@ -21,17 +21,17 @@ public interface ConsultOneContract { abstract class ConsultOnePresenter extends BasePresenter{ public abstract void getTools(LinearLayout linearLayout); - public abstract void getBanners(String position); + public abstract void getBanners(String position,String areaName); - public abstract void getConsultContent(); + public abstract void getConsultContent(String areaName, int channel, int toFirstPage, int pageIndex); } interface IConsultOneModel extends IBaseModel{ void getTools(); - Observable getBanners(String position); + Observable getBanners(String position,String areaName); - Observable getConsultContent(); + Observable getConsultContent(String areaName, int channel, int toFirstPage, int pageIndex); } interface IConsultOneView extends IBaseFragment{ diff --git a/app/src/main/java/com/shunzhi/parent/model/consult/ConsultModel.java b/app/src/main/java/com/shunzhi/parent/model/consult/ConsultModel.java index 0e30765..66c5ed5 100644 --- a/app/src/main/java/com/shunzhi/parent/model/consult/ConsultModel.java +++ b/app/src/main/java/com/shunzhi/parent/model/consult/ConsultModel.java @@ -6,6 +6,8 @@ import com.share.mvpsdk.helper.RetrofitCreateHelper; import com.share.mvpsdk.helper.RxHelper; import com.shunzhi.parent.AppConfig; import com.shunzhi.parent.api.Consult; +import com.shunzhi.parent.api.LoginRegisterApi; +import com.shunzhi.parent.bean.UserInfo; import com.shunzhi.parent.contract.consult.ConsultContract; import io.reactivex.Observable; @@ -23,9 +25,17 @@ public class ConsultModel extends BaseModel implements ConsultContract.IConsultM } @Override - public Observable getBanners(String position) { + public Observable getBanners(String position,String areaName) { return RetrofitCreateHelper.getInstance().createApi(Consult.class, AppConfig.BASE_URL) - .getBanners(position).compose(RxHelper.rxSchedulerHelper()); + .getBanners(position,areaName).compose(RxHelper.rxSchedulerHelper()); + } + + @Override + public Observable getContextChannel(String areaName, int channel, int toFirstPage, int pageIndex) { +// return RetrofitCreateHelper.getInstance().createApi(Consult.class, AppConfig.BASE_URL) +// .getConsultContent(areaName,channel,toFirstPage,pageIndex); + return RetrofitCreateHelper.getInstance().createApi(Consult.class,AppConfig.BASE_URL).getConsultContent(areaName,channel,toFirstPage,pageIndex) + .compose(RxHelper.rxSchedulerHelper()); } public static ConsultContract.IConsultModel newInstance() { diff --git a/app/src/main/java/com/shunzhi/parent/model/consult/consultone/ConsultOneModel.java b/app/src/main/java/com/shunzhi/parent/model/consult/consultone/ConsultOneModel.java index de5b676..b2c8a99 100644 --- a/app/src/main/java/com/shunzhi/parent/model/consult/consultone/ConsultOneModel.java +++ b/app/src/main/java/com/shunzhi/parent/model/consult/consultone/ConsultOneModel.java @@ -27,14 +27,14 @@ public class ConsultOneModel extends BaseModel implements ConsultOneContract.ICo } @Override - public Observable getBanners(String position) { + public Observable getBanners(String position,String areaName) { return RetrofitCreateHelper.getInstance().createApi(Consult.class, AppConfig.BASE_URL) - .getBanners(position).compose(RxHelper.rxSchedulerHelper()); + .getBanners(position,areaName).compose(RxHelper.rxSchedulerHelper()); } @Override - public Observable getConsultContent() { - return RetrofitCreateHelper.getInstance().createApi(Consult.class,AppConfig.BASE_URL) - .getConsultContent().compose(RxHelper.rxSchedulerHelper()); + public Observable getConsultContent(String areaName, int channel, int toFirstPage, int pageIndex) { + return RetrofitCreateHelper.getInstance().createApi(Consult.class, AppConfig.BASE_URL) + .getConsultContent(areaName,channel,toFirstPage,pageIndex); } } diff --git a/app/src/main/java/com/shunzhi/parent/presenter/consult/ConsultPresenter.java b/app/src/main/java/com/shunzhi/parent/presenter/consult/ConsultPresenter.java index decf1af..a9e1f00 100644 --- a/app/src/main/java/com/shunzhi/parent/presenter/consult/ConsultPresenter.java +++ b/app/src/main/java/com/shunzhi/parent/presenter/consult/ConsultPresenter.java @@ -9,20 +9,27 @@ import android.widget.LinearLayout; import com.google.gson.Gson; import com.google.gson.JsonArray; import com.google.gson.JsonObject; +import com.share.mvpsdk.utils.OkHttpExceptionUtil; import com.share.mvpsdk.utils.ToastUtils; import com.shunzhi.parent.R; import com.shunzhi.parent.bean.GuangGaoBean; import com.shunzhi.parent.bean.ToolBean; +import com.shunzhi.parent.bean.channel.ChannelBean; +import com.shunzhi.parent.bean.channel.ChannelContextBean; +import com.shunzhi.parent.bean.channel.ChannelInfo; import com.shunzhi.parent.contract.consult.ConsultContract; import com.shunzhi.parent.model.consult.ConsultModel; import com.shunzhi.parent.ui.activity.consult.ConsultOneLevelActivity; import com.shunzhi.parent.util.AttrsUtils; import com.shunzhi.parent.views.TextAndImgShowView; +import org.json.JSONObject; + import java.util.ArrayList; import java.util.List; import io.reactivex.functions.Consumer; +import retrofit2.HttpException; /** * Created by ToaHanDong on 2018/3/14. @@ -31,18 +38,18 @@ import io.reactivex.functions.Consumer; public class ConsultPresenter extends ConsultContract.ConsultPresenter { @Override public void getTools(LinearLayout layout_control) { - List toolBeanList=new ArrayList<>(); - toolBeanList.add(new ToolBean(R.drawable.xiaoxue+"","小学")); - toolBeanList.add(new ToolBean(R.drawable.zhongxue+"","中学")); - toolBeanList.add(new ToolBean(R.drawable.gaozhong+"","高中")); - toolBeanList.add(new ToolBean(R.drawable.parent+"","家长")); + List toolBeanList = new ArrayList<>(); + toolBeanList.add(new ToolBean(R.drawable.xiaoxue + "", "小学")); + toolBeanList.add(new ToolBean(R.drawable.zhongxue + "", "中学")); + toolBeanList.add(new ToolBean(R.drawable.gaozhong + "", "高中")); + toolBeanList.add(new ToolBean(R.drawable.parent + "", "家长")); for (int i = 0; i < toolBeanList.size(); i++) { - TextAndImgShowView textAndImgShowView=new TextAndImgShowView(mIView.getBindActivity()); + TextAndImgShowView textAndImgShowView = new TextAndImgShowView(mIView.getBindActivity()); textAndImgShowView.setTextColor(R.color.textColor); textAndImgShowView.setText(toolBeanList.get(i).toolName); textAndImgShowView.setImgs(R.drawable.play, Integer.parseInt(toolBeanList.get(i).toolImage)); textAndImgShowView.setSelect(true); - textAndImgShowView.setWidth(mIView.getBindActivity(),layout_control); + textAndImgShowView.setWidth(mIView.getBindActivity(), layout_control); textAndImgShowView.setBackground(AttrsUtils.getAttrs(mIView.getBindActivity()).getDrawable(0)); textAndImgShowView.setOnClickListener(new View.OnClickListener() { @Override @@ -56,29 +63,58 @@ public class ConsultPresenter extends ConsultContract.ConsultPresenter { } @Override - public void getBanners(String position) { + public void getBanners(String position, String areaName) { - mRxManager.register(mIModel.getBanners(position).subscribe(new Consumer() { + mRxManager.register(mIModel.getBanners(position, areaName).subscribe(new Consumer() { @Override public void accept(JsonObject jsonObject) throws Exception { - if (jsonObject.get("status").getAsString().equals("1")){ - JsonArray jsonArray=jsonObject.getAsJsonArray("data"); - List guangGaoBeanList=new ArrayList<>(); + if (jsonObject.get("status").getAsString().equals("1")) { + JsonArray jsonArray = jsonObject.getAsJsonArray("data"); + List guangGaoBeanList = new ArrayList<>(); for (int i = 0; i < jsonArray.size(); i++) { - GuangGaoBean guangGaoBean=new Gson().fromJson(jsonArray.get(i).getAsJsonObject(),GuangGaoBean.class); + GuangGaoBean guangGaoBean = new Gson().fromJson(jsonArray.get(i).getAsJsonObject(), GuangGaoBean.class); guangGaoBeanList.add(guangGaoBean); } mIView.showBanners(guangGaoBeanList); - }else { + } else { ToastUtils.showToast(jsonObject.get("message").getAsString()); } } }, new Consumer() { @Override public void accept(Throwable throwable) throws Exception { + OkHttpExceptionUtil.handOkHttpException((HttpException) throwable); + } + })); + } + + @Override + public void getContextChannel(String areaName, int channel, int toFirstPage, int pageIndex) { + mRxManager.register(mIModel.getContextChannel(areaName, channel, toFirstPage, pageIndex).subscribe(new Consumer() { + @Override + public void accept(JsonObject jsonObject) throws Exception { + ToastUtils.showToast(jsonObject.toString()); + JsonObject json=jsonObject.getAsJsonObject("data"); + Gson g=new Gson(); + ChannelInfo channelInfo = g.fromJson(json.toString(),ChannelInfo.class); + List contextList = channelInfo.getChannelContent(); + List channelList = channelInfo.getSubchannel(); + mIView.showChannel(channelList); + mIView.showContext(contextList); + + + } + }, new Consumer() { + @Override + public void accept(Throwable throwable) throws Exception { + OkHttpExceptionUtil.handOkHttpException((HttpException) throwable); + } })); + + + } @Override diff --git a/app/src/main/java/com/shunzhi/parent/presenter/consult/consultone/ConsultOnePresenter.java b/app/src/main/java/com/shunzhi/parent/presenter/consult/consultone/ConsultOnePresenter.java index 1d7e686..5059458 100644 --- a/app/src/main/java/com/shunzhi/parent/presenter/consult/consultone/ConsultOnePresenter.java +++ b/app/src/main/java/com/shunzhi/parent/presenter/consult/consultone/ConsultOnePresenter.java @@ -54,8 +54,8 @@ public class ConsultOnePresenter extends ConsultOneContract.ConsultOnePresenter{ } @Override - public void getBanners(String position) { - mRxManager.register(mIModel.getBanners(position).subscribe(new Consumer() { + public void getBanners(String position,String areaName) { + mRxManager.register(mIModel.getBanners(position,areaName).subscribe(new Consumer() { @Override public void accept(JsonObject jsonObject) throws Exception { if (jsonObject.get("status").getAsString().equals("1")){ @@ -79,10 +79,11 @@ public class ConsultOnePresenter extends ConsultOneContract.ConsultOnePresenter{ } @Override - public void getConsultContent() { + public void getConsultContent(String areaName, int channel, int toFirstPage, int pageIndex) { } + @Override public ConsultOneContract.IConsultOneModel getModel() { return ConsultOneModel.newInstance(); diff --git a/app/src/main/java/com/shunzhi/parent/ui/fragment/ConsultFragment.java b/app/src/main/java/com/shunzhi/parent/ui/fragment/ConsultFragment.java index 403c99d..f1a9b37 100644 --- a/app/src/main/java/com/shunzhi/parent/ui/fragment/ConsultFragment.java +++ b/app/src/main/java/com/shunzhi/parent/ui/fragment/ConsultFragment.java @@ -7,6 +7,8 @@ import android.content.IntentFilter; import android.os.Bundle; import android.support.annotation.NonNull; import android.support.annotation.Nullable; +import android.support.v7.widget.LinearLayoutManager; +import android.support.v7.widget.RecyclerView; import android.view.View; import android.widget.ImageView; import android.widget.LinearLayout; @@ -18,9 +20,15 @@ import com.share.mvpsdk.base.fragment.BaseMVPCompatFragment; import com.shunzhi.parent.AppConfig; import com.shunzhi.parent.AppContext; import com.shunzhi.parent.R; +import com.shunzhi.parent.adapter.ContextAdapter; import com.shunzhi.parent.bean.GuangGaoBean; +import com.shunzhi.parent.bean.channel.ChannelBean; +import com.shunzhi.parent.bean.channel.ChannelContextBean; import com.shunzhi.parent.contract.consult.ConsultContract; import com.shunzhi.parent.presenter.consult.ConsultPresenter; +import com.shunzhi.parent.ui.activity.consult.ConsultOneLevelActivity; +import com.shunzhi.parent.util.AttrsUtils; +import com.shunzhi.parent.views.TextAndImgShowView; import com.stx.xhb.xbanner.XBanner; import java.io.ByteArrayOutputStream; @@ -33,15 +41,20 @@ import cn.jzvd.JZVideoPlayerStandard; import me.leefeng.citypicker.CityPicker; import me.leefeng.citypicker.CityPickerListener; -public class ConsultFragment extends BaseMVPCompatFragment implements View.OnClickListener -,ConsultContract.IConsultView,CityPickerListener{ +public class ConsultFragment extends BaseMVPCompatFragment implements View.OnClickListener + , ConsultContract.IConsultView, CityPickerListener { ImageView ivSearch; XBanner xBanner; + RecyclerView recycler_context; + + ContextAdapter contextAdapter; + List imgesUrl = new ArrayList<>(); List describeList = new ArrayList<>(); + List contextList = new ArrayList<>(); JZVideoPlayerStandard videoplayer; @@ -49,8 +62,8 @@ public class ConsultFragment extends BaseMVPCompatFragment guangGaoBeanList) { for (int i = 0; i < guangGaoBeanList.size(); i++) { - imgesUrl.add(AppConfig.BASE_URL_IMG+guangGaoBeanList.get(i).fileSrc); + imgesUrl.add(AppConfig.BASE_URL_IMG + guangGaoBeanList.get(i).fileSrc); describeList.add(guangGaoBeanList.get(i).describe); } initBanners(); } @Override + public void showChannel(List list) { + for (int i = 0; i < list.size(); i++) { + TextAndImgShowView textAndImgShowView = new TextAndImgShowView(getActivity()); + textAndImgShowView.setTextColor(R.color.textColor); + textAndImgShowView.setText(list.get(i).getChannelName()); +// textAndImgShowView.setImgs(R.drawable.play, Integer.parseInt(list.get(i).getChannelImage())); + textAndImgShowView.setSelect(true); + textAndImgShowView.setWidth(getActivity(), layout_control); + textAndImgShowView.setBackground(AttrsUtils.getAttrs(getActivity()).getDrawable(0)); + textAndImgShowView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + ConsultOneLevelActivity.getInstance(getActivity()); + } + }); + layout_control.addView(textAndImgShowView); + } + + + + + } + + @Override + public void showContext(List list) { + contextList.clear(); + contextList.addAll(list); + contextAdapter.addAll(contextList); + recycler_context.setAdapter(contextAdapter); + + + } + + @Override public void getCity(String name) { tvLocalAddress.setText(name.split(" ")[1]); } diff --git a/app/src/main/java/com/shunzhi/parent/ui/fragment/StartFragment.java b/app/src/main/java/com/shunzhi/parent/ui/fragment/StartFragment.java index 205187e..1b8d2cc 100644 --- a/app/src/main/java/com/shunzhi/parent/ui/fragment/StartFragment.java +++ b/app/src/main/java/com/shunzhi/parent/ui/fragment/StartFragment.java @@ -14,6 +14,8 @@ import com.share.mvpsdk.base.fragment.BaseMVPCompatFragment; import com.shunzhi.parent.AppConfig; import com.shunzhi.parent.R; import com.shunzhi.parent.bean.GuangGaoBean; +import com.shunzhi.parent.bean.channel.ChannelBean; +import com.shunzhi.parent.bean.channel.ChannelContextBean; import com.shunzhi.parent.contract.consult.ConsultContract; import com.shunzhi.parent.presenter.consult.ConsultPresenter; import com.shunzhi.parent.ui.MainActivity; @@ -36,9 +38,9 @@ public class StartFragment extends BaseMVPCompatFragment list) { + + } + + @Override + public void showContext(List list) { + + } + private void initBannes(List guangGaoBeanList) { final List imgUrl = new ArrayList<>(); List describeList = new ArrayList<>(); diff --git a/app/src/main/java/com/shunzhi/parent/ui/fragment/consult/ConsultOneLevelFragment.java b/app/src/main/java/com/shunzhi/parent/ui/fragment/consult/ConsultOneLevelFragment.java index bfd030f..a66b457 100644 --- a/app/src/main/java/com/shunzhi/parent/ui/fragment/consult/ConsultOneLevelFragment.java +++ b/app/src/main/java/com/shunzhi/parent/ui/fragment/consult/ConsultOneLevelFragment.java @@ -81,7 +81,7 @@ public class ConsultOneLevelFragment extends BaseMVPCompatFragment - + + + + + diff --git a/app/src/main/res/layout/layout_consult_content.xml b/app/src/main/res/layout/layout_consult_content.xml index d5f6123..bb9ef8c 100644 --- a/app/src/main/res/layout/layout_consult_content.xml +++ b/app/src/main/res/layout/layout_consult_content.xml @@ -1,8 +1,9 @@ + android:layout_height="wrap_content" + android:layout_marginBottom="@dimen/size_dp_10"> + - + + + - + + + -- libgit2 0.21.0