From ec75b360740d2676acd74a687dca7b23391790b0 Mon Sep 17 00:00:00 2001 From: renjianbo0118 <18133922183> Date: Wed, 10 Mar 2021 01:13:13 +0800 Subject: [PATCH] d --- app/src/main/AndroidManifest.xml | 1 + .../com/sl/house_property/MainFragment.java | 18 +- .../discovery/HistoryRecordActivity.java | 2 + .../discovery/HistoryRecordActivitytwo.java | 406 ++++++++++++++++++ .../res/drawable/corner_backgroundtwo.xml | 12 + .../main/res/layout/activity_my_property.xml | 14 +- .../res/layout/layout_history_recordtwo.xml | 163 +++++++ 7 files changed, 602 insertions(+), 14 deletions(-) create mode 100644 app/src/main/java/com/sl/house_property/discovery/HistoryRecordActivitytwo.java create mode 100644 app/src/main/res/drawable/corner_backgroundtwo.xml create mode 100644 app/src/main/res/layout/layout_history_recordtwo.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b65e589..0adfc97 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -269,6 +269,7 @@ + implements V public void onClick(View v) { // Intent intent = new Intent(getContext(), PropertyActivity.class); // startActivity(intent); - String fangchan = (String) SPUtils.getSp(getActivity(), DoConfig.FANGCHAN_DATA, "0"); - if(fangchan.equals("0")){ - Intent intent = new Intent(getActivity(), MyPropertyActivity.class); - intent.putExtra("usertitile", "我的房产"); - startActivityForResult(intent, 0); - return; - } - Intent intent = new Intent(getContext(), HistoryRecordActivity.class); +// String fangchan = (String) SPUtils.getSp(getActivity(), DoConfig.FANGCHAN_DATA, "0"); +// if(fangchan.equals("0")){ +// Intent intent = new Intent(getActivity(), MyPropertyActivity.class); +// intent.putExtra("usertitile", "我的房产"); +// startActivityForResult(intent, 0); +// return; +// } + + Intent intent = new Intent(getContext(), HistoryRecordActivitytwo.class); final RegisterUser user = Config.getInstance(getActivity()).getUser(); intent.putExtra("userId", user.getUserid()); diff --git a/app/src/main/java/com/sl/house_property/discovery/HistoryRecordActivity.java b/app/src/main/java/com/sl/house_property/discovery/HistoryRecordActivity.java index 1b85a4e..85850fc 100644 --- a/app/src/main/java/com/sl/house_property/discovery/HistoryRecordActivity.java +++ b/app/src/main/java/com/sl/house_property/discovery/HistoryRecordActivity.java @@ -1,6 +1,7 @@ package com.sl.house_property.discovery; import android.content.Context; +import android.content.Intent; import android.graphics.Bitmap; import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; @@ -140,6 +141,7 @@ public class HistoryRecordActivity extends BaseActivity { + private Context context; + private int type = 2; + private int page = 1; + private String userId; + private Loader loader; + private ArrayList discoveryListEntities = new ArrayList<>(); + private ArrayList fragments; + private String[] strings; + + @Override + protected int getLayoutResId() { + return R.layout.layout_history_recordtwo; + + } + + @Override + protected void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + context = this; + loader = new Loader(); + ImmersionBar.with(this) + .keyboardEnable(true) //解决软键盘与底部输入框冲突问题 + // .keyboardEnable(true, WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE + // | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE) //软键盘自动弹出 + .init(); + userId = getIntent().getStringExtra("userId"); + String title = getIntent().getStringExtra("title"); + mDataBinding.tvTitle.setText(title); + // mDataBinding.tvTitle.setText(userName); + mDataBinding.left.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + finish(); + } + }); + strings = new String[2]; + strings[0] = "说说"; + // strings[1] = "商品"; + fragments = new ArrayList<>(); + + fragments.add(HistoryRecordFragment.newInstance(1, userId,0,getIntent().getIntExtra("dataType",0))); + // fragments.add(HistoryRecordFragment.newInstance(2, userId,0,getIntent().getIntExtra("dataType",0))); + MyViewPagerAdapter myViewPagerAdapter = new MyViewPagerAdapter(getSupportFragmentManager()); + mDataBinding.fl.setAdapter(myViewPagerAdapter); + mDataBinding.tb.setupWithViewPager(mDataBinding.fl); +// mDataBinding.tv1.setOnClickListener(new View.OnClickListener() { +// @Override +// public void onClick(View v) { +// +// if (type == 2) { +// type = 1; +// page = 1; +// getData(); +// mDataBinding.tv1.setTextColor(getResources().getColor(R.color.white)); +// mDataBinding.tv1.setBackgroundColor(getResources().getColor(R.color.colorPrimary)); +// mDataBinding.tv2.setTextColor(getResources().getColor(R.color.black)); +// mDataBinding.tv2.setBackgroundColor(getResources().getColor(R.color.white)); +// } +// } +// }); +// mDataBinding.tv2.setOnClickListener(new View.OnClickListener() { +// @Override +// public void onClick(View v) { +// if (type == 1) { +// type = 2; +// page = 1; +// getData(); +// mDataBinding.tv2.setTextColor(getResources().getColor(R.color.white)); +// mDataBinding.tv2.setBackgroundColor(getResources().getColor(R.color.colorPrimary)); +// mDataBinding.tv1.setTextColor(getResources().getColor(R.color.black)); +// mDataBinding.tv1.setBackgroundColor(getResources().getColor(R.color.white)); +// } +// } +// }); +// mDataBinding.dw.setOnRefreshLoadMoreListener(new OnRefreshLoadMoreListener() { +// @Override +// public void onLoadMore(@NonNull RefreshLayout refreshLayout) { +// getData(); +// } +// +// @Override +// public void onRefresh(@NonNull RefreshLayout refreshLayout) { +// page = 1; +// getData(); +// } +// }); +// intRecycleView(); +// mDataBinding.dw.autoRefresh(); + mDataBinding.tvWuye.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Intent intent = new Intent(HistoryRecordActivitytwo.this, PropertyActivity.class); + startActivity(intent); + } + }); + } + + + //2. 保存MyOnTouchListener接口的列表 + private ArrayList onTouchListeners = new ArrayList(); + //4.提供给Fragment通过getActivity()方法来注册自己的触摸事件的方法 + public void registerMyOnTouchListener(MainTabActivity.MyOnTouchListener myOnTouchListener) { + onTouchListeners.add(myOnTouchListener); + } + + //5.提供给Fragment通过getActivity()方法来注销自己的触摸事件的方法 + public void unregisterMyOnTouchListener(MainTabActivity.MyOnTouchListener myOnTouchListener) { + onTouchListeners.remove(myOnTouchListener); + } + class MyViewPagerAdapter extends FragmentPagerAdapter { + public MyViewPagerAdapter(FragmentManager fm) { + super(fm); + } + + @Override + public Fragment getItem(int position) { + return fragments.get(position); + } + + + @Override + public int getCount() { + return fragments.size(); + } + + @Override + public CharSequence getPageTitle(int position) { + return strings[position]; + + } + } + + private void intRecycleView() { + + + LinearLayoutManager linearLayoutManager = new LinearLayoutManager(context); + mDataBinding.recyView.setNestedScrollingEnabled(false);//禁止rcyc嵌套滑动 + mDataBinding.recyView.setLayoutManager(linearLayoutManager); + BaseRecycleViewAdapter baseRecycleViewAdapter = new BaseRecycleViewAdapter(context, R.layout.item_discovery); + baseRecycleViewAdapter.setHasStableIds(true); + + discoveryListEntities = new ArrayList<>(); + baseRecycleViewAdapter.setOnBindViewHolder(new BaseRecycleViewAdapter.BindView() { + @Override + public void onBindViewHolder(Object b, final int position) { + if (!(position >= discoveryListEntities.size())) { + final ItemDiscoveryBinding homeGridAdapterItemBinding = (ItemDiscoveryBinding) b; + // homeGridAdapterItemBinding.setMyentity(discoveryListEntities.get(position)); + homeGridAdapterItemBinding.ivComment.setVisibility(View.GONE); + final DiscoveryListEntity discoveryListEntity = discoveryListEntities.get(position); + homeGridAdapterItemBinding.tvNikeName.setText(discoveryListEntity.getNickname()); + homeGridAdapterItemBinding.tvContent.setText(discoveryListEntity.getGoods_detail()); + + + if (discoveryListEntity.getLike().isEmpty()) { + homeGridAdapterItemBinding.tvLike.setVisibility(View.GONE); + } else { + homeGridAdapterItemBinding.tvLike.setVisibility(View.VISIBLE); + StringBuilder likeString = new StringBuilder(); + for (int i = 0; i < discoveryListEntity.getLike().size(); i++) { + if (i == 0) { + likeString.append("❤"); + + } else { + likeString.append(","); + } + likeString.append(discoveryListEntity.getLike().get(i).getNickname()); + } + homeGridAdapterItemBinding.tvLike.setText(likeString.toString()); + + homeGridAdapterItemBinding.tvTime.setText(DateUtils.getDate(discoveryListEntity.getCtime())); + + } + if (discoveryListEntity.getDis_content().isEmpty()) { + homeGridAdapterItemBinding.rvComment.setVisibility(View.GONE); + } else { + homeGridAdapterItemBinding.rvComment.setVisibility(View.VISIBLE); + FullyGridLayoutManager mgr = new FullyGridLayoutManager(context, 1); + mgr.setOrientation(FullyGridLayoutManager.VERTICAL); + mgr.setSmoothScrollbarEnabled(true); + homeGridAdapterItemBinding.rvComment.setLayoutManager(mgr); + BaseRecycleViewAdapter baseRecycleViewAdapter = new BaseRecycleViewAdapter(context, R.layout.item_comment); + homeGridAdapterItemBinding.rvComment.setAdapter(baseRecycleViewAdapter); + final ArrayList dis_content = discoveryListEntity.getDis_content(); + baseRecycleViewAdapter.setOnBindViewHolder(new BaseRecycleViewAdapter.BindView() { + @Override + public void onBindViewHolder(Object b, int position) { + ItemCommentBinding itemCommentBinding = (ItemCommentBinding) b; + itemCommentBinding.tvName.setText(dis_content.get(position).getNickname() + ": "); + itemCommentBinding.tvInfo.setText(dis_content.get(position).getContents()); + if (dis_content.get(position).getReply().isEmpty()) { + itemCommentBinding.llHf.setVisibility(View.GONE); + + } else { + itemCommentBinding.llHf.setVisibility(View.VISIBLE); + itemCommentBinding.tvName2.setText(discoveryListEntity.getNickname()); + itemCommentBinding.tvInfo2.setText("回复"); + itemCommentBinding.tvName3.setText(dis_content.get(position).getNickname() + ":"); + itemCommentBinding.tvInfo3.setText(dis_content.get(position).getReply()); + + } + } + }); + baseRecycleViewAdapter.setData(dis_content); + + } + + + RequestOptions requestOptions = new RequestOptions(); + requestOptions.placeholder(R.mipmap.icon_default_rectangle); + requestOptions.error(R.mipmap.icon_default_rectangle); + + Glide.with(context).load(discoveryListEntity.getAvatar()) + .apply(requestOptions) + .into(homeGridAdapterItemBinding.imageHead); + ArrayList imageInfos = new ArrayList<>(); + + if (discoveryListEntity.getPic().size() > 0) { + + Log.e("pic", discoveryListEntity.getPic().get(0)); + for (int i = 0; i < discoveryListEntity.getPic().size(); i++) { + if (discoveryListEntity.getPic().get(i).endsWith(".mp4") || discoveryListEntity.getPic().get(i).endsWith(".avi")) { + ImageInfo imageInfo = new ImageInfo(); + imageInfo.setType(2); + imageInfo.setBigImageUrl(discoveryListEntity.getPic().get(i)); + imageInfo.setThumbnailUrl(discoveryListEntity.getPic().get(i)); + imageInfos.add(imageInfo); + } else { + ImageInfo imageInfo = new ImageInfo(); + imageInfo.setType(1); + imageInfo.setBigImageUrl(discoveryListEntity.getPic().get(i)); + imageInfo.setThumbnailUrl(discoveryListEntity.getPic().get(i)); + imageInfos.add(imageInfo); + } + + } + + } else { + ImageInfo imageInfo = new ImageInfo(); + imageInfo.setType(1); + imageInfo.setBigImageUrl(discoveryListEntity.getThumb()); + imageInfo.setThumbnailUrl(discoveryListEntity.getThumb()); + imageInfos.add(imageInfo); + } + homeGridAdapterItemBinding.nineGrid.setAdapter(new NineGridViewClickAdapter(context, imageInfos)); + } + } + }); + mDataBinding.recyView.setAdapter(baseRecycleViewAdapter); + + baseRecycleViewAdapter.setData(discoveryListEntities); + } + + private void getData() { + + Map map = new HashMap<>(); + map.put("userid", userId); + map.put("type", type + ""); + map.put("app", "Goods"); + map.put("class", "MyGoodsLists"); + map.put("page", page + ""); + map.put("sign", Md5.md5("Goods" + "MyGoodsLists" + Md5.secret)); + Subscription subscribe = loader.getMovie(ApiConfig.BASE_URL, map).subscribe(new Action1() { + @Override + public void call(Resultcode resultcode) { + mDataBinding.dw.finishRefresh(); + mDataBinding.dw.finishLoadMore(); + progressDialog.dismiss(); + if (!(resultcode.status == 0)) { + setToast(1, resultcode.msg); + } + if (resultcode.status == 0) { + // intRecycleView(); + Gson gs = new Gson(); + LinkedTreeMap adta = (LinkedTreeMap) resultcode.data; + String s = gs.toJson(adta); + try { + JSONObject jsonObject = new JSONObject(s); + org.json.JSONArray array = jsonObject.getJSONArray("info"); + Type type = new TypeToken>() { + }.getType(); + if (page == 1) { + String fengmian = jsonObject.getString("fengmian"); + String avatar = jsonObject.getString("avatar"); + Picasso.with(context).load(fengmian) + .placeholder(R.mipmap.icon_default_rectangle) + .into(target); + Picasso.with(context).load(avatar) + .placeholder(R.mipmap.icon_default_rectangle) + .transform(new PicassoRoundTransform()) + .into(mDataBinding.head); + ArrayList o = new Gson().fromJson(array.toString(), type); + discoveryListEntities.clear(); + discoveryListEntities.addAll(o); + BaseRecycleViewAdapter baseRecycleViewAdapter = (BaseRecycleViewAdapter) mDataBinding.recyView.getAdapter(); + baseRecycleViewAdapter.setData(discoveryListEntities); + page++; + } else { + ArrayList o = new Gson().fromJson(array.toString(), type); + discoveryListEntities.addAll(o); + + BaseRecycleViewAdapter baseRecycleViewAdapter = (BaseRecycleViewAdapter) mDataBinding.recyView.getAdapter(); + baseRecycleViewAdapter.setData(discoveryListEntities); + Log.e("sizi", discoveryListEntities.size() + ""); + // int count = jsonObject.getInt("count"); + if (o.isEmpty()) { + mDataBinding.dw.finishLoadMoreWithNoMoreData(); + } else { + + page++; + + } + } + + + } catch (Exception e) { + e.fillInStackTrace(); + } + } + } + }, new Action1() { + @Override + public void call(Throwable throwable) { + progressDialog.dismiss(); + mDataBinding.dw.finishRefresh(); + mDataBinding.dw.finishLoadMore(); + setToast(2, getString(R.string.getdatafailure)); + throwable.printStackTrace(); + } + }); + addSubscription(subscribe); + } + + private Target target = new Target() { + @Override + public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) { + Drawable drawable = new BitmapDrawable(bitmap); + mDataBinding.v.setBackground(drawable); + + + } + + @Override + public void onBitmapFailed(Drawable errorDrawable) { + } + + @Override + public void onPrepareLoad(Drawable placeHolderDrawable) { + } + }; + +} diff --git a/app/src/main/res/drawable/corner_backgroundtwo.xml b/app/src/main/res/drawable/corner_backgroundtwo.xml new file mode 100644 index 0000000..dec918f --- /dev/null +++ b/app/src/main/res/drawable/corner_backgroundtwo.xml @@ -0,0 +1,12 @@ + + + + + + diff --git a/app/src/main/res/layout/activity_my_property.xml b/app/src/main/res/layout/activity_my_property.xml index dd08dfd..7a939b8 100644 --- a/app/src/main/res/layout/activity_my_property.xml +++ b/app/src/main/res/layout/activity_my_property.xml @@ -24,18 +24,20 @@ android:layout_height="wrap_content" android:focusable="true" > + + android:text="+添加" + android:textColor="@color/white" + android:textSize="20sp" /> + diff --git a/app/src/main/res/layout/layout_history_recordtwo.xml b/app/src/main/res/layout/layout_history_recordtwo.xml new file mode 100644 index 0000000..eda165e --- /dev/null +++ b/app/src/main/res/layout/layout_history_recordtwo.xml @@ -0,0 +1,163 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file