From 7fe8ca2f5d836914cc26c7719149b5bab91f1ef4 Mon Sep 17 00:00:00 2001 From: jinyuer <454386664@qq.com> Date: Mon, 19 Apr 2021 16:13:03 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B6=88=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/sl/house_property/BaseFragment.java | 1 + .../sl/house_property/MainTabActivity.java | 31 ++--- .../message/MessageAdapter.java | 23 ++++ .../house_property/message/MessageEntity.java | 66 +++++++++++ .../message/MessageFragment.java | 112 ++++++++++++++++++ app/src/main/res/layout/activity_main_tab.xml | 39 +++--- app/src/main/res/layout/fragment_message.xml | 51 ++++++++ app/src/main/res/layout/item_message.xml | 52 ++++++++ 8 files changed, 337 insertions(+), 38 deletions(-) create mode 100644 app/src/main/java/com/sl/house_property/message/MessageAdapter.java create mode 100644 app/src/main/java/com/sl/house_property/message/MessageEntity.java create mode 100644 app/src/main/java/com/sl/house_property/message/MessageFragment.java create mode 100644 app/src/main/res/layout/fragment_message.xml create mode 100644 app/src/main/res/layout/item_message.xml diff --git a/app/src/main/java/com/sl/house_property/BaseFragment.java b/app/src/main/java/com/sl/house_property/BaseFragment.java index f9cdab3..5bb856d 100644 --- a/app/src/main/java/com/sl/house_property/BaseFragment.java +++ b/app/src/main/java/com/sl/house_property/BaseFragment.java @@ -33,6 +33,7 @@ public ProgressDialog progressDialog; @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(getLayoutId(), null); + mDataBinding = DataBindingUtil.bind(view); onCreateVew(inflater, savedInstanceState); progressDialog=new ProgressDialog(getActivity()); diff --git a/app/src/main/java/com/sl/house_property/MainTabActivity.java b/app/src/main/java/com/sl/house_property/MainTabActivity.java index 2827412..c5dabf7 100644 --- a/app/src/main/java/com/sl/house_property/MainTabActivity.java +++ b/app/src/main/java/com/sl/house_property/MainTabActivity.java @@ -7,39 +7,21 @@ import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentTransaction; import android.util.Log; -import android.view.Gravity; import android.view.MotionEvent; import android.view.View; import android.widget.RadioButton; import android.widget.RadioGroup; -import com.google.gson.Gson; -import com.google.gson.internal.LinkedTreeMap; -import com.google.gson.reflect.TypeToken; import com.gyf.immersionbar.ImmersionBar; -import com.selectpicker.OptionsPopupWindow; import com.sl.house_property.cart.CartFragment; import com.sl.house_property.databinding.ActivityMainTabBinding; import com.sl.house_property.discovery.DiscoveryFragment; -import com.sl.house_property.discovery.LikeFragment; -import com.sl.house_property.user.MyPropertyActivity; +import com.sl.house_property.message.MessageFragment; -import java.lang.reflect.Type; import java.util.ArrayList; -import java.util.HashMap; -import java.util.Map; -import entity.MyHomequEntity; -import entity.RegisterUser; -import entity.SimpleEntity; -import http.ApiConfig; import my_loader.Loader; -import my_loader.Resultcode; -import rx.Subscription; -import rx.functions.Action1; import tools.Config; -import utils.Md5; -import utils.SPUtils; public class MainTabActivity extends BaseActivity implements View.OnClickListener, @@ -64,6 +46,7 @@ public class MainTabActivity extends BaseActivity private Main3Fragment fragment2; private CartFragment fragment3; private Main4Fragment fragment4; + private MessageFragment messageFragment; // private LikeFragment likeFragment; private Fragment currentFragment; @@ -248,14 +231,14 @@ public class MainTabActivity extends BaseActivity break; case R.id.button2: - if (fragment2 == null) { - fragment2 = Main3Fragment.newInstance("", ""); - fragmentTransaction.add(R.id.mycontent, fragment2, "fragment2"); + if (messageFragment == null) { + messageFragment = MessageFragment.newInstance(); + fragmentTransaction.add(R.id.mycontent, messageFragment, "fragment2"); } else { - fragmentTransaction.show(fragment2); + fragmentTransaction.show(messageFragment); } - currentFragment = fragment2; + currentFragment = messageFragment; break; case R.id.button3: // mDataBinding.getRoot().setBackground(getResources().getDrawable(R.drawable.background_slowly)); diff --git a/app/src/main/java/com/sl/house_property/message/MessageAdapter.java b/app/src/main/java/com/sl/house_property/message/MessageAdapter.java new file mode 100644 index 0000000..3f1d016 --- /dev/null +++ b/app/src/main/java/com/sl/house_property/message/MessageAdapter.java @@ -0,0 +1,23 @@ +package com.sl.house_property.message; + +import android.widget.ImageView; + +import com.bumptech.glide.Glide; +import com.bumptech.glide.request.RequestOptions; +import com.chad.library.adapter.base.BaseQuickAdapter; +import com.chad.library.adapter.base.BaseViewHolder; +import com.sl.house_property.R; + +public class MessageAdapter extends BaseQuickAdapter { + public MessageAdapter() { + super(R.layout.item_message); + } + + @Override + protected void convert(BaseViewHolder baseViewHolder, MessageEntity.StoreInfo messageEntity) { + Glide.with(mContext).load(messageEntity.getImg()).apply(new RequestOptions().circleCrop()) + .into(baseViewHolder.itemView.findViewById(R.id.iv)); + baseViewHolder.setText(R.id.tv_name,messageEntity.getStore_name()); + baseViewHolder.setText(R.id.tv_title,messageEntity.getTitle()); + } +} diff --git a/app/src/main/java/com/sl/house_property/message/MessageEntity.java b/app/src/main/java/com/sl/house_property/message/MessageEntity.java new file mode 100644 index 0000000..c6ead2b --- /dev/null +++ b/app/src/main/java/com/sl/house_property/message/MessageEntity.java @@ -0,0 +1,66 @@ +package com.sl.house_property.message; + +import android.support.annotation.Keep; + +import java.util.ArrayList; + +@Keep +public class MessageEntity { + private ArrayList storeInfo; + private String userid; + + public ArrayList getStoreInfo() { + return storeInfo; + } + + public void setStoreInfo(ArrayList storeInfo) { + this.storeInfo = storeInfo; + } + + public String getUserid() { + return userid; + } + + public void setUserid(String userid) { + this.userid = userid; + } + + public static class StoreInfo{ + private String title; + private String img; + private String store_name; + private String url; + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getImg() { + return img; + } + + public void setImg(String img) { + this.img = img; + } + + public String getStore_name() { + return store_name; + } + + public void setStore_name(String store_name) { + this.store_name = store_name; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } + } + +} diff --git a/app/src/main/java/com/sl/house_property/message/MessageFragment.java b/app/src/main/java/com/sl/house_property/message/MessageFragment.java new file mode 100644 index 0000000..14e4ae1 --- /dev/null +++ b/app/src/main/java/com/sl/house_property/message/MessageFragment.java @@ -0,0 +1,112 @@ +package com.sl.house_property.message; + +import android.os.Bundle; +import android.support.annotation.NonNull; +import android.support.annotation.Nullable; +import android.support.v4.app.Fragment; +import android.support.v7.widget.LinearLayoutManager; +import android.support.v7.widget.RecyclerView; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.Toast; + +import com.chad.library.adapter.base.BaseQuickAdapter; +import com.google.gson.Gson; +import com.google.gson.internal.LinkedTreeMap; +import com.google.gson.reflect.TypeToken; +import com.sl.house_property.R; +import com.sl.house_property.WebActivitytwo; + +import org.jetbrains.annotations.NotNull; + +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; + +import entity.RegisterUser; +import http.ApiConfig; +import my_loader.Loader; +import my_loader.Resultcode; +import rx.functions.Action1; +import tools.Config; +import utils.Md5; + +public class MessageFragment extends Fragment { + // private int pageIndex = 0; + private MessageAdapter adapter = null; + + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + View view = inflater.inflate(R.layout.fragment_message, null); + return view; + } + + public static MessageFragment newInstance() { + MessageFragment fragment = new MessageFragment(); + Bundle args = new Bundle(); + + fragment.setArguments(args); + return fragment; + } + + @Override + public void onViewCreated(@NonNull @NotNull View view, @Nullable @org.jetbrains.annotations.Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + RecyclerView rv = view.findViewById(R.id.rv); + adapter = new MessageAdapter(); + rv.setAdapter(adapter); + rv.setLayoutManager(new LinearLayoutManager(getContext())); + adapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() { + @Override + public void onItemClick(BaseQuickAdapter baseQuickAdapter, View view, int i) { + WebActivitytwo.runActivity(getContext(), adapter.getData().get(i).getTitle(), adapter.getData().get(i).getUrl()); + } + }); + getData(); + } + + private void getData() { + RegisterUser user = + Config.getInstance(getContext()).getUser(); + Map map = new HashMap<>(); + if (user != null) { + map.put("userid", user.getUserid()); + } else { + map.put("userid", 0 + ""); + } + map.put("app", "Store"); + map.put("class", "GetMsgList"); + map.put("sign", Md5.md5("Store" + "GetMsgList" + Md5.secret)); + Loader mGankLoader = new Loader(); + mGankLoader.getMovie(ApiConfig.BASE_URL, map).subscribe(new Action1() { + @Override + public void call(Resultcode resultcode) { + if (!(resultcode.status == 0)) { +// getActivity().setToast(1, resultcode.msg); + Toast.makeText(getContext(), resultcode.msg, Toast.LENGTH_SHORT).show(); + } + + Gson gs = new Gson(); + LinkedTreeMap adta = (LinkedTreeMap) resultcode.data; + String s = gs.toJson(adta); + Log.e("json", s); + + + MessageEntity messageEntity = gs.fromJson(s, MessageEntity.class); + + adapter.setNewData(messageEntity.getStoreInfo()); + } + }, new Action1() { + @Override + public void call(Throwable throwable) { + throwable.fillInStackTrace(); + Toast.makeText(getContext(), getString(R.string.getdatafailure), Toast.LENGTH_SHORT).show(); + } + }); + } + +} diff --git a/app/src/main/res/layout/activity_main_tab.xml b/app/src/main/res/layout/activity_main_tab.xml index 8bbaed0..0b79a9d 100644 --- a/app/src/main/res/layout/activity_main_tab.xml +++ b/app/src/main/res/layout/activity_main_tab.xml @@ -63,6 +63,17 @@ android:text="@string/news" android:textColor="@color/radiobuttoncolor" /> + + + android:textColor="@color/radiobuttoncolor" + android:visibility="gone" /> - - + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_message.xml b/app/src/main/res/layout/item_message.xml new file mode 100644 index 0000000..cb4baf6 --- /dev/null +++ b/app/src/main/res/layout/item_message.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + \ No newline at end of file