From 0098d5166a8e61d652ed2555fbefb43272fbc1a1 Mon Sep 17 00:00:00 2001 From: jianbo <263303411@qq.com> Date: Sat, 20 Feb 2021 11:26:47 +0800 Subject: [PATCH] d --- .../com/sl/house_property/Main4Fragment.java | 161 +++++++++++++++++- .../discovery/DiscoveryFragment.java | 10 +- app/src/main/res/layout/item_discovery.xml | 9 +- 开发文档 | 5 +- 4 files changed, 176 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/sl/house_property/Main4Fragment.java b/app/src/main/java/com/sl/house_property/Main4Fragment.java index 68cee45..286c383 100644 --- a/app/src/main/java/com/sl/house_property/Main4Fragment.java +++ b/app/src/main/java/com/sl/house_property/Main4Fragment.java @@ -2,8 +2,12 @@ package com.sl.house_property; import android.content.Context; import android.content.Intent; +import android.graphics.Bitmap; import android.net.Uri; import android.os.Bundle; +import android.os.Environment; +import android.os.Handler; +import android.os.Message; import android.support.v4.app.Fragment; import android.util.DisplayMetrics; import android.view.LayoutInflater; @@ -30,13 +34,27 @@ import com.sl.house_property.user.MyWalletActivity; import com.squareup.picasso.Picasso; import java.io.File; +import java.io.IOException; import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; import adapter.BaseRecycleViewAdapter; import entity.MyUserFEntity; import entity.RegisterUser; +import http.ApiConfig; +import http.FileUpLoad.retrofit.HttpStaticApi; +import http.FileUpLoad.retrofit.RetrofitCallBack; +import http.FileUpLoad.retrofit.RetrofitHttpUpLoad; +import my_loader.Resultcode; +import okhttp3.RequestBody; +import retrofit2.Response; import tools.Config; +import tools.ImageCompress; import utils.BitmapTools; +import utils.Md5; +import utils.MyPhoneValue; +import utils.SelectPicDanimicActivity; /** @@ -47,7 +65,7 @@ import utils.BitmapTools; * Use the {@link Main1Fragment#newInstance} factory method to * create an instance of this fragment. */ -public class Main4Fragment extends BaseFragment { +public class Main4Fragment extends BaseFragment implements RetrofitCallBack { // TODO: Rename parameter arguments, choose names that match // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER private static final String ARG_PARAM1 = "param1"; @@ -63,6 +81,7 @@ public class Main4Fragment extends BaseFragment { private ArrayList myUserFEntities; private BaseRecycleViewAdapter baseRecycleViewAdapter; private ImageView userImageView; + BaseActivity baseActivity; public Main4Fragment() { // Required empty public constructor @@ -71,6 +90,7 @@ public class Main4Fragment extends BaseFragment { @Override protected void onCreateVew(LayoutInflater inflater, Bundle savedInstanceState) { super.onCreateVew(inflater, savedInstanceState); + baseActivity = (BaseActivity) getActivity(); mDataBinding.setting.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { @@ -182,9 +202,7 @@ public class Main4Fragment extends BaseFragment { new DialogHelptwo().showDownloadDialog(getActivity(), "", "","确认", new DialogHelptwo.ClickListener() { @Override public void confirm() { - Intent intent = new Intent(getActivity(), MyPropertyActivity.class); - intent.putExtra("usertitile", "我的房产"); - startActivityForResult(intent, 0); + takeMyPhoto(1000); } @Override @@ -494,6 +512,7 @@ public class Main4Fragment extends BaseFragment { } + /** * This interface must be implemented by activities that contain this * fragment to allow an interaction in this fragment to be communicated @@ -519,4 +538,138 @@ public class Main4Fragment extends BaseFragment { } } + + + private void takeMyPhoto(int userImgeREQUST) { + //拍照 + Intent intent = new Intent(getActivity(), + SelectPicDanimicActivity.class); + intent.putExtra("photoid", userImgeREQUST); + intent.putExtra("crop", true); + intent.putExtra("cropx", 100); + intent.putExtra("cropy", 100); + startActivityForResult(intent, userImgeREQUST); + getActivity().overridePendingTransition(R.anim.slide_from_bottom, + R.anim.slide_out_bottom); + } + @Override + public void onActivityResult(int requestCode, int resultCode, Intent data) { + super.onActivityResult(requestCode, resultCode, data); + + try { + if (!(data == null)) { + setIconDataFromIntent(data, requestCode,resultCode); + } + } catch (Exception e + ) { + e.printStackTrace(); + } + } + private void setIconDataFromIntent(Intent data, int requestCode, int code) { + Bitmap image = null;//BitmapTools.decodeUriAsBitmap(MyDynamicActivity.this,data.getData(),1); //extras.getParcelable("data"); + deletePath.add(BitmapTools.getPathByUri(getActivity(),data.getData())); + String itmepath= System.currentTimeMillis()+""; + File file=null; + /* try { + file = BitmapTools.saveFile(image, Environment.getExternalStorageDirectory().getPath() + "/newgao", itmepath+requestCode + otherphoto); + } catch (IOException e) { + e.printStackTrace(); + }*/ + ImageCompress compress = new ImageCompress(); + ImageCompress.CompressOptions options = new ImageCompress.CompressOptions(); + options.uri = data.getData(); + int width= MyPhoneValue.getScreeWidth(getActivity() + ); + options.maxWidth=width; + options.maxHeight=width; + image = compress.compressFromUri(getActivity(), options); + + // mDataBinding.myphoto.setImageBitmap(image); + try { + + file = BitmapTools.saveFile(image, Environment.getExternalStorageDirectory().getPath() + "/haotian", itmepath+requestCode + otherphoto); + // Picasso.with(getActivity()).load(file).into(mDataBinding.myphoto); + uploaduPuserImage(file); + } catch (IOException e) { + e.printStackTrace(); + } + + } + private int progressmes=1000; + private Handler handler=new Handler(){ + @Override + public void handleMessage(final Message msg) { + super.handleMessage(msg); + if(msg.what==progressmes){ + if(progressDialog!=null&&progressDialog.isShowing()){ + baseActivity.runOnUiThread(new Runnable() { + @Override + public void run() { + progressDialog.setMessage((String)msg.obj); + } + }); + + } + } + } + }; + + private void uploaduPuserImage(File file) { + progressDialog.setMessage(getString(R.string.requsting)); + progressDialog.setCancelable(false); + progressDialog.show(); + RetrofitHttpUpLoad retrofitHttpUpLoad = RetrofitHttpUpLoad.getInstance(); + retrofitHttpUpLoad.clear(); + Map map = new HashMap<>(); + RegisterUser user = + Config.getInstance(getActivity()).getUser(); + if (user != null) { + map.put("userid", user.getUserid()); + } else { + map.put("userid", 0 + ""); + } + map.put("app", "Cas"); + map.put("class", "UploadAvatar"); + map.put("sign", Md5.md5("Cas" + "UploadAvatar" + Md5.secret)); + + + map.put("avatar", file); + + Map params = retrofitHttpUpLoad.addParameter(map).bulider(); + retrofitHttpUpLoad.setHandler(handler); + retrofitHttpUpLoad.addToEnqueue(retrofitHttpUpLoad.mHttpService.upLoadAgree(ApiConfig.BASE_URL, params), + this, HttpStaticApi.HTTP_UPLOADIMAGE); + + } + + @Override + public void onResponse(Response response, int method) { + progressDialog.dismiss(); + switch (method) { + case HttpStaticApi.HTTP_UPLOADIMAGE: + + Resultcode resultcode = (Resultcode)response.body(); + if (0==(resultcode.status)) { + baseActivity.setToast("修改成功"); + // updatePortrait = true; + RegisterUser user=Config.getInstance(getActivity()).getUser(); + user.setAvatar((String)resultcode.data); + Config.getInstance(getActivity()).putUser(user); + } else { + baseActivity.setToast(resultcode.msg); + } + break; + default: + break; + } + } + + @Override + public void onFailure(Response response, int method) { + progressDialog.dismiss(); + baseActivity.setToast(getString(R.string.getdatafailure)); + } + + + } diff --git a/app/src/main/java/com/sl/house_property/discovery/DiscoveryFragment.java b/app/src/main/java/com/sl/house_property/discovery/DiscoveryFragment.java index 6dd4fac..b322d22 100644 --- a/app/src/main/java/com/sl/house_property/discovery/DiscoveryFragment.java +++ b/app/src/main/java/com/sl/house_property/discovery/DiscoveryFragment.java @@ -431,9 +431,13 @@ public class DiscoveryFragment extends BaseFragment im homeGridAdapterItemBinding.tvLike.setVisibility(View.VISIBLE); StringBuilder likeString = new StringBuilder(); for (int i = 0; i < discoveryListEntity.getLike().size(); i++) { - if (i != 0 && i != discoveryListEntity.getLike().size() - 1) { - likeString.append(","); - } + // if (i != 0 && i != discoveryListEntity.getLike().size() - 1) { + // likeString.append(","); + // } + + if (i != 0) { + likeString.append(","); + } likeString.append(discoveryListEntity.getLike().get(i).getNickname()); } diff --git a/app/src/main/res/layout/item_discovery.xml b/app/src/main/res/layout/item_discovery.xml index ef2423c..73cccf0 100644 --- a/app/src/main/res/layout/item_discovery.xml +++ b/app/src/main/res/layout/item_discovery.xml @@ -27,13 +27,15 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/text_name" + android:textStyle="bold" android:textSize="14sp" /> @@ -80,6 +84,9 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#15Dddddd" + + android:textColor="@color/text_name" + android:textStyle="bold" />