Browse Source

修改头像

316044749 7 years ago
parent
commit
1e2d1864a2

+ 33 - 2
app/src/main/java/com/ynstkz/shitu/android/activity/AlterHeadpicActivity.java

@@ -8,22 +8,33 @@ import android.os.Bundle;
 import android.os.Environment;
 import android.provider.MediaStore;
 import android.support.annotation.Nullable;
+import android.support.v4.graphics.drawable.RoundedBitmapDrawable;
+import android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory;
 import android.text.TextUtils;
 import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
 
 import com.bumptech.glide.Glide;
+import com.bumptech.glide.request.target.BitmapImageViewTarget;
 import com.common.library.okhttp.callback.Callback;
 import com.google.gson.Gson;
+import com.tencent.connect.UserInfo;
 import com.ynstkz.shitu.android.R;
+import com.ynstkz.shitu.android.application.STApplication;
+import com.ynstkz.shitu.android.application.STSign;
 import com.ynstkz.shitu.android.base.BaseBean;
 import com.ynstkz.shitu.android.base.TitleBarActivity;
+import com.ynstkz.shitu.android.bean.UserInfoBean;
 import com.ynstkz.shitu.android.data.RequestGroup;
+import com.ynstkz.shitu.android.data.UrlCat;
+import com.ynstkz.shitu.android.event.UserInfoChangeEvent;
 import com.ynstkz.shitu.android.utils.FileUtils;
 import com.ynstkz.shitu.android.utils.ImageUtils;
 import com.ynstkz.shitu.android.view.SelectPicDialog;
 
+import org.greenrobot.eventbus.EventBus;
+
 import java.io.File;
 import java.text.SimpleDateFormat;
 import java.util.Date;
@@ -81,9 +92,20 @@ public class AlterHeadpicActivity extends TitleBarActivity implements View.OnCli
 
     private void initView() {
         tvTitle.setText("个人头像");
+        UserInfoBean userInfo = STSign.getInstance().getUserInfo();
+        if(userInfo != null && userInfo.getData() != null){
+            Glide.with(this).load(UrlCat.HOST + userInfo.getData().getHeadPic()).asBitmap().into(new BitmapImageViewTarget(ivHeadPic){
+
+                @Override
+                protected void setResource(Bitmap resource) {
+                    RoundedBitmapDrawable circularBitmapDrawable = RoundedBitmapDrawableFactory.create(getResources(), resource);
+                    circularBitmapDrawable.setCircular(true);
+                    ivHeadPic.setImageDrawable(circularBitmapDrawable);
+                }
+            });
+        }
     }
 
-
     private void initData() {
 
     }
@@ -266,7 +288,16 @@ public class AlterHeadpicActivity extends TitleBarActivity implements View.OnCli
                 if (baseBean != null) {
                     showToast(baseBean.getMsg());
                     if ("200".equals(baseBean.getCode())) {
-                        Glide.with(AlterHeadpicActivity.this).load(protraitFile).into(ivHeadPic);
+                        Glide.with(AlterHeadpicActivity.this).load(protraitFile).asBitmap().into(new BitmapImageViewTarget(ivHeadPic){
+
+                            @Override
+                            protected void setResource(Bitmap resource) {
+                                RoundedBitmapDrawable circularBitmapDrawable = RoundedBitmapDrawableFactory.create(getResources(), resource);
+                                circularBitmapDrawable.setCircular(true);
+                                ivHeadPic.setImageDrawable(circularBitmapDrawable);
+                            }
+                        });
+                        EventBus.getDefault().post(new UserInfoChangeEvent());
                     }
                 }
             }

+ 10 - 0
app/src/main/java/com/ynstkz/shitu/android/event/UserInfoChangeEvent.java

@@ -0,0 +1,10 @@
+package com.ynstkz.shitu.android.event;
+
+/**
+ * 作者:fuchangle on 2018/3/19 12:58
+ */
+
+public class UserInfoChangeEvent {
+
+
+}

+ 20 - 1
app/src/main/java/com/ynstkz/shitu/android/fragment/UserCenterFragment.java

@@ -1,7 +1,10 @@
 package com.ynstkz.shitu.android.fragment;
 
 import android.content.Intent;
+import android.graphics.Bitmap;
 import android.os.Bundle;
+import android.support.v4.graphics.drawable.RoundedBitmapDrawable;
+import android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -10,6 +13,7 @@ import android.widget.ImageView;
 import android.widget.TextView;
 
 import com.bumptech.glide.Glide;
+import com.bumptech.glide.request.target.BitmapImageViewTarget;
 import com.common.library.cache.Cache;
 import com.common.library.okhttp.callback.Callback;
 import com.google.gson.Gson;
@@ -28,7 +32,9 @@ import com.ynstkz.shitu.android.base.BaseFragment;
 import com.ynstkz.shitu.android.bean.UserInfoBean;
 import com.ynstkz.shitu.android.common.Constants;
 import com.ynstkz.shitu.android.data.RequestGroup;
+import com.ynstkz.shitu.android.data.UrlCat;
 import com.ynstkz.shitu.android.event.LoginEvent;
+import com.ynstkz.shitu.android.event.UserInfoChangeEvent;
 import com.ynstkz.shitu.android.view.ScrollViewWithGridView;
 
 import org.greenrobot.eventbus.EventBus;
@@ -193,7 +199,15 @@ public class UserCenterFragment extends BaseFragment {
             return;
         }
         tvUsername.setText(userInfoBean.getData().getUserName());
-        Glide.with(getActivity()).load(userInfoBean.getData().getHeadPic()).into(ivHead);
+        Glide.with(getActivity()).load(UrlCat.HOST + userInfoBean.getData().getHeadPic()).asBitmap().into(new BitmapImageViewTarget(ivHead){
+
+            @Override
+            protected void setResource(Bitmap resource) {
+                RoundedBitmapDrawable circularBitmapDrawable = RoundedBitmapDrawableFactory.create(getResources(), resource);
+                circularBitmapDrawable.setCircular(true);
+                ivHead.setImageDrawable(circularBitmapDrawable);
+            }
+        });
     }
 
     @Subscribe(threadMode = ThreadMode.MAIN)
@@ -201,6 +215,11 @@ public class UserCenterFragment extends BaseFragment {
         getUserInfo();
     }
 
+    @Subscribe(threadMode = ThreadMode.MAIN)
+    public void onMessageEvent(UserInfoChangeEvent event) {
+        getUserInfo();
+    }
+
     @Override
     public void onDestroyView() {
         super.onDestroyView();

+ 1 - 2
app/src/main/res/layout/activity_alter_headpic.xml

@@ -18,8 +18,7 @@
             android:layout_width="@dimen/company_250dp"
             android:layout_height="@dimen/company_250dp"
             android:layout_gravity="center"
-            android:layout_marginTop="@dimen/company_20dp"
-            android:background="@mipmap/ic_launcher"/>
+            android:layout_marginTop="@dimen/company_20dp"/>
 
         <TextView
             android:layout_width="wrap_content"

+ 1 - 1
app/src/main/res/layout/activity_org_detail.xml

@@ -36,7 +36,7 @@
             android:layout_height="wrap_content"
             android:layout_alignParentRight="true"
             android:layout_centerVertical="true"
-            android:paddingRight="@dimen/company_10dp"
+            android:paddingRight="@dimen/company_20dp"
             android:orientation="horizontal">
 
             <ImageView