真人认证

This commit is contained in:
hch 2023-10-19 18:27:39 +08:00
parent 9e68f35627
commit bcfd1c22e6
35 changed files with 1951 additions and 506 deletions

View File

@ -178,6 +178,16 @@
android:label="编辑签名" android:label="编辑签名"
android:windowSoftInputMode="stateHidden|adjustResize" /> android:windowSoftInputMode="stateHidden|adjustResize" />
<activity
android:name=".activity.user.AuthActivity"
android:label="实名认证"
android:windowSoftInputMode="stateHidden|adjustResize" />
<activity
android:name=".activity.user.AuthBloggerActivity"
android:label="达人认证"
android:windowSoftInputMode="stateHidden|adjustResize" />
<provider <provider
android:name="androidx.core.content.FileProvider" android:name="androidx.core.content.FileProvider"
android:authorities="com.shayu.onetoone.fileprovider" android:authorities="com.shayu.onetoone.fileprovider"

View File

@ -2,6 +2,7 @@ package com.shayu.onetoone.activity.login;
import android.annotation.SuppressLint; import android.annotation.SuppressLint;
import android.app.Dialog;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.view.View; import android.view.View;
@ -31,6 +32,7 @@ import com.yunbao.common.bean.HttpCallbackModel;
import com.yunbao.common.glide.ImgLoader; import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.http.base.HttpCallback; import com.yunbao.common.http.base.HttpCallback;
import com.yunbao.common.interfaces.ImageResultCallback; import com.yunbao.common.interfaces.ImageResultCallback;
import com.yunbao.common.utils.DialogUitl;
import com.yunbao.common.utils.L; import com.yunbao.common.utils.L;
import com.yunbao.common.utils.ProcessImageUtil; import com.yunbao.common.utils.ProcessImageUtil;
import com.yunbao.common.utils.ToastUtil; import com.yunbao.common.utils.ToastUtil;
@ -66,6 +68,7 @@ public class CompleteActivity extends AbsOTOActivity {
int day; int day;
private String avatarUrl; private String avatarUrl;
Dialog dialog;
@Override @Override
protected int getLayoutId() { protected int getLayoutId() {
@ -81,6 +84,7 @@ public class CompleteActivity extends AbsOTOActivity {
initView(); initView();
initCamera(); initCamera();
dialog = DialogUitl.loadingDialog(mContext, "上传中");
} }
private void initCamera() { private void initCamera() {
@ -96,17 +100,20 @@ public class CompleteActivity extends AbsOTOActivity {
L.e("cameraUtil.setImageResultCallback:"); L.e("cameraUtil.setImageResultCallback:");
if (file != null) { if (file != null) {
mAvatarFile = file; mAvatarFile = file;
dialog.show();
OTONetManager.getInstance(CompleteActivity.this).updateFile(mAvatarFile, new HttpCallback<AvatarBean>() { OTONetManager.getInstance(CompleteActivity.this).updateFile(mAvatarFile, new HttpCallback<AvatarBean>() {
@Override @Override
public void onSuccess(AvatarBean data) { public void onSuccess(AvatarBean data) {
ImgLoader.display(mContext, file, userAvatar); ImgLoader.display(mContext, file, userAvatar);
//txtChoose.setVisibility(View.GONE); //txtChoose.setVisibility(View.GONE);
avatarUrl = data.getAvatar(); avatarUrl = data.getAvatar();
dialog.hide();
ToastUtil.show("上传成功"); ToastUtil.show("上传成功");
} }
@Override @Override
public void onError(String error) { public void onError(String error) {
dialog.hide();
ToastUtil.show("上传失败"); ToastUtil.show("上传失败");
} }
}); });
@ -115,7 +122,7 @@ public class CompleteActivity extends AbsOTOActivity {
@Override @Override
public void onFailure() { public void onFailure() {
dialog.hide();
} }
}); });
} }

View File

@ -7,6 +7,7 @@ import android.os.Handler;
import com.alibaba.android.arouter.facade.annotation.Route; import com.alibaba.android.arouter.facade.annotation.Route;
import com.shayu.onetoone.R; import com.shayu.onetoone.R;
import com.shayu.onetoone.activity.login.EntryActivity; import com.shayu.onetoone.activity.login.EntryActivity;
import com.shayu.onetoone.manager.RouteManager;
import com.yunbao.common.CommonAppConfig; import com.yunbao.common.CommonAppConfig;
import com.yunbao.common.Constants; import com.yunbao.common.Constants;
import com.yunbao.common.activity.AbsActivity; import com.yunbao.common.activity.AbsActivity;
@ -51,12 +52,12 @@ public class SettingActivity extends AbsActivity {
} }
}); });
//黑名单 // 达人认证
//修改密码 ViewClicksAntiShake.clicksAntiShake(findViewById(R.id.toBlogger), new ViewClicksAntiShake.ViewClicksCallBack() {
ViewClicksAntiShake.clicksAntiShake(findViewById(R.id.change_the_password), new ViewClicksAntiShake.ViewClicksCallBack() {
@Override @Override
public void onViewClicks() { public void onViewClicks() {
//forwardModifyPwd(); //forwardModifyPwd();
RouteManager.forwardAuthBloggerActivity();
} }
}); });
ViewClicksAntiShake.clicksAntiShake(findViewById(R.id.logout), new ViewClicksAntiShake.ViewClicksCallBack() { ViewClicksAntiShake.clicksAntiShake(findViewById(R.id.logout), new ViewClicksAntiShake.ViewClicksCallBack() {

View File

@ -0,0 +1,264 @@
package com.shayu.onetoone.activity.user;
import android.app.Dialog;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.lxj.xpopup.XPopup;
import com.shayu.onetoone.R;
import com.shayu.onetoone.bean.AuthBean;
import com.shayu.onetoone.bean.AvatarBean;
import com.shayu.onetoone.manager.OTONetManager;
import com.shayu.onetoone.manager.RouteManager;
import com.shayu.onetoone.view.UserAuthPopup;
import com.yunbao.common.Constants;
import com.yunbao.common.activity.AbsActivity;
import com.yunbao.common.bean.HttpCallbackModel;
import com.yunbao.common.bean.UserBean;
import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.http.base.HttpCallback;
import com.yunbao.common.interfaces.ImageResultCallback;
import com.yunbao.common.utils.Bus;
import com.yunbao.common.utils.DialogUitl;
import com.yunbao.common.utils.L;
import com.yunbao.common.utils.ProcessImageUtil;
import com.yunbao.common.utils.ToastUtil;
import java.io.File;
/**
* 我的 编辑资料
*/
@Route(path = RouteManager.ACTIVITY_AUTH)
public class AuthActivity extends AbsActivity {
private ImageView image1;
private ImageView image2;
private ImageView image11;
private ImageView image22;
private TextView submit;
private ProcessImageUtil cameraUtil;
private File file1;
private File file2;
private String imgUrl1;
private String imgUrl2;
Dialog dialog;
AuthBean authBean;
private TextView remake;
@Override
protected int getLayoutId() {
return R.layout.activity_auth;
}
@Override
protected void main() {
setTitle(mContext.getString(R.string.edit_profile));
image1 = findViewById(R.id.image1);
image11 = findViewById(R.id.image11);
image2 = findViewById(R.id.image2);
image22 = findViewById(R.id.image22);
submit = findViewById(R.id.submit);
remake = findViewById(R.id.remake);
image1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
isFront = true;
setImage();
}
});
image11.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
isFront = true;
setImage();
}
});
image2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
isFront = false;
setImage();
}
});
image22.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
isFront = false;
setImage();
}
});
submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
submit();
}
});
initCamera();
dialog = DialogUitl.loadingDialog(mContext, "上传中");
getAuthInfo();
}
private void getAuthInfo() {
OTONetManager.getInstance(AuthActivity.this).getAuthInfo(new HttpCallback<AuthBean>() {
@Override
public void onSuccess(AuthBean data) {
authBean = data;
if (data.getName_auth() == 2) {//已通过
ImgLoader.display(mContext, data.getAuth_front(), image1);
ImgLoader.display(mContext, data.getAuth_back(), image2);
image11.setVisibility(View.GONE);
image22.setVisibility(View.GONE);
submit.setEnabled(false);
} else if (data.getName_auth() == 3) {//已提交
ImgLoader.display(mContext, data.getAuth_front(), image1);
ImgLoader.display(mContext, data.getAuth_back(), image2);
image11.setVisibility(View.GONE);
image22.setVisibility(View.GONE);
submit.setText("審核中,請耐心等待");
submit.setEnabled(false);
} else {
ImgLoader.display(mContext, data.getAuth_front(), image1);
ImgLoader.display(mContext, data.getAuth_back(), image2);
submit.setText("重新提交");
remake.setText(data.getAuth_remark());
submit.setEnabled(true);
}
}
@Override
public void onError(String error) {
}
});
}
private void initCamera() {
cameraUtil = new ProcessImageUtil(this, "com.shayu.onetoone.fileprovider");
cameraUtil.setImageResultCallback(new ImageResultCallback() {
@Override
public void beforeCamera() {
}
@Override
public void onSuccess(File file) {
L.e("cameraUtil.setImageResultCallback:");
if (!dialog.isShowing()) {
dialog.show();
}
if (file != null) {
OTONetManager.getInstance(mContext).updateFile(file, new HttpCallback<AvatarBean>() {
@Override
public void onSuccess(AvatarBean data) {
if (data != null) {
ToastUtil.show("上传成功");
if (isFront) {
imgUrl1 = data.getAvatar();
file1 = file;
ImgLoader.display(mContext, file1, image1);
image11.setVisibility(View.GONE);
} else {
imgUrl2 = data.getAvatar();
file2 = file;
ImgLoader.display(mContext, file2, image2);
image22.setVisibility(View.GONE);
}
}
if (file1 != null && file2 != null) {
submit.setBackground(getResources().getDrawable(R.drawable.bg_auth_submit_2));
}
dialog.hide();
}
@Override
public void onError(String error) {
dialog.hide();
}
});
}
}
@Override
public void onFailure() {
}
});
}
boolean isFront = true;
private void submit() {
OTONetManager.getInstance(AuthActivity.this).setAuthInfo(imgUrl1, imgUrl2, new HttpCallback<HttpCallbackModel>() {
@Override
public void onSuccess(HttpCallbackModel data) {
if (data.getCode() == 0) {
ToastUtil.show("已發起審核,請耐心等待審核結果");
submit.setBackground(getResources().getDrawable(R.drawable.bg_auth_submit_1));
submit.setText("審核中,請耐心等待");
imgUrl1 = null;
imgUrl2 = null;
} else {
ToastUtil.show(data.getMsg());
}
}
@Override
public void onError(String error) {
}
});
}
public void setImage() {
UserAuthPopup userAuthPopup = new UserAuthPopup(AuthActivity.this, new UserAuthPopup.onIsCameraClickListener() {
@Override
public void onIsCamera(boolean isCamera) {
if (isCamera) {
cameraUtil.getImageByCamera();
} else {
cameraUtil.getImageByAlumb();
}
}
});
new XPopup.Builder(mContext).asCustom(userAuthPopup).show();
}
@Override
protected void onDestroy() {
Bus.getOff(this);
if (cameraUtil != null) {
cameraUtil.release();
}
//MainHttpUtil.cancel(MainHttpConsts.UPDATE_AVATAR);
//MainHttpUtil.cancel(MainHttpConsts.UPDATE_FIELDS);
super.onDestroy();
}
private UserBean userModel;
@Override
protected void onResume() {
super.onResume();
if (Constants.isShowPage != -1) {
finish();
}
}
@Override
public void onBackPressed() {
}
}

View File

@ -0,0 +1,176 @@
package com.shayu.onetoone.activity.user;
import android.app.Dialog;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.lxj.xpopup.XPopup;
import com.shayu.onetoone.R;
import com.shayu.onetoone.bean.AvatarBean;
import com.shayu.onetoone.manager.OTONetManager;
import com.shayu.onetoone.manager.RouteManager;
import com.shayu.onetoone.view.UserAuthPopup;
import com.yunbao.common.Constants;
import com.yunbao.common.activity.AbsActivity;
import com.yunbao.common.bean.HttpCallbackModel;
import com.yunbao.common.bean.UserBean;
import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.http.base.HttpCallback;
import com.yunbao.common.interfaces.ImageResultCallback;
import com.yunbao.common.utils.Bus;
import com.yunbao.common.utils.DialogUitl;
import com.yunbao.common.utils.L;
import com.yunbao.common.utils.ProcessImageUtil;
import com.yunbao.common.utils.ToastUtil;
import com.yunbao.common.views.CompleteInformationPopup;
import java.io.File;
/**
* 我的 编辑资料
*/
@Route(path = RouteManager.ACTIVITY_AUTH_BLOGGER)
public class AuthBloggerActivity extends AbsActivity {
private TextView submit;
private ProcessImageUtil cameraUtil;
Dialog dialog;
@Override
protected int getLayoutId() {
return R.layout.activity_auth_blogger;
}
@Override
protected void main() {
setTitle(mContext.getString(R.string.edit_profile));
submit = findViewById(R.id.submit);
submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
submit();
}
});
initCamera();
dialog = DialogUitl.loadingDialog(mContext, "上传中");
}
private void initCamera() {
cameraUtil = new ProcessImageUtil(this, "com.shayu.onetoone.fileprovider");
cameraUtil.setImageResultCallback(new ImageResultCallback() {
@Override
public void beforeCamera() {
}
@Override
public void onSuccess(File file) {
L.e("cameraUtil.setImageResultCallback:");
if (!dialog.isShowing()) {
dialog.show();
}
if (file != null) {
OTONetManager.getInstance(mContext).updateFile(file, new HttpCallback<AvatarBean>() {
@Override
public void onSuccess(AvatarBean data) {
dialog.hide();
}
@Override
public void onError(String error) {
dialog.hide();
}
});
}
}
@Override
public void onFailure() {
}
});
}
boolean isFront = true;
private void submit() {
/*OTONetManager.getInstance(AuthBloggerActivity.this).setAuthInfo(imgUrl1, imgUrl2, new HttpCallback<HttpCallbackModel>() {
@Override
public void onSuccess(HttpCallbackModel data) {
if (data.getCode() == 0) {
ToastUtil.show("已發起審核,請耐心等待審核結果");
submit.setBackground(getResources().getDrawable(R.drawable.bg_auth_submit_1));
submit.setText("審核中,請耐心等待");
imgUrl1 = null;
imgUrl2 = null;
} else {
ToastUtil.show(data.getMsg());
}
}
@Override
public void onError(String error) {
}
});*/
}
public void setImage() {
UserAuthPopup userAuthPopup = new UserAuthPopup(AuthBloggerActivity.this, new UserAuthPopup.onIsCameraClickListener() {
@Override
public void onIsCamera(boolean isCamera) {
if (isCamera) {
cameraUtil.getImageByCamera();
} else {
cameraUtil.getImageByAlumb();
}
}
});
new XPopup.Builder(mContext).asCustom(userAuthPopup).show();
}
@Override
protected void onDestroy() {
Bus.getOff(this);
if (cameraUtil != null) {
cameraUtil.release();
}
//MainHttpUtil.cancel(MainHttpConsts.UPDATE_AVATAR);
//MainHttpUtil.cancel(MainHttpConsts.UPDATE_FIELDS);
super.onDestroy();
}
private UserBean userModel;
@Override
protected void onResume() {
super.onResume();
if (Constants.isShowPage != -1) {
finish();
}
}
@Override
public void onBackPressed() {
if (userModel.getUserInfoComplete() == 1) {
finish();
} else {
new XPopup.Builder(mContext).asCustom(new CompleteInformationPopup(mContext, true, new CompleteInformationPopup.CompleteInformationCallBack() {
@Override
public void onCancel() {
}
@Override
public void onSure() {
finish();
}
})).show();
}
}
}

View File

@ -6,9 +6,8 @@ import android.text.TextUtils;
import android.view.View; import android.view.View;
import android.widget.EditText; import android.widget.EditText;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.shayu.onetoone.R; import com.shayu.onetoone.R;
import com.shayu.onetoone.manager.OTONetManager;
import com.shayu.onetoone.utils.MainHttpConsts; import com.shayu.onetoone.utils.MainHttpConsts;
import com.shayu.onetoone.utils.MainHttpUtil; import com.shayu.onetoone.utils.MainHttpUtil;
import com.tencent.imsdk.v2.V2TIMCallback; import com.tencent.imsdk.v2.V2TIMCallback;
@ -17,8 +16,8 @@ import com.tencent.imsdk.v2.V2TIMUserFullInfo;
import com.yunbao.common.CommonAppConfig; import com.yunbao.common.CommonAppConfig;
import com.yunbao.common.Constants; import com.yunbao.common.Constants;
import com.yunbao.common.activity.AbsActivity; import com.yunbao.common.activity.AbsActivity;
import com.yunbao.common.bean.HttpCallbackModel;
import com.yunbao.common.bean.UserBean; import com.yunbao.common.bean.UserBean;
import com.yunbao.common.http.HttpCallback;
import com.yunbao.common.utils.RouteUtil; import com.yunbao.common.utils.RouteUtil;
import com.yunbao.common.utils.ToastUtil; import com.yunbao.common.utils.ToastUtil;
@ -67,41 +66,43 @@ public class EditNameActivity extends AbsActivity {
ToastUtil.show(R.string.edit_profile_name_empty); ToastUtil.show(R.string.edit_profile_name_empty);
return; return;
} }
MainHttpUtil.updateFields("{\"user_nicename\":\"" + content + "\"}", new HttpCallback() {
@Override
public void onSuccess(int code, String msg, String[] info) {
if (code == 0) {
if (info.length > 0) {
JSONObject obj = JSON.parseObject(info[0]);
ToastUtil.show(obj.getString("msg"));
UserBean u = CommonAppConfig.getInstance().getUserBean();
if (u != null) {
u.setUserNiceName(content);
V2TIMUserFullInfo v2TIMUserFullInfo = new V2TIMUserFullInfo();
v2TIMUserFullInfo.setNickname(content);
V2TIMManager.getInstance().setSelfInfo(v2TIMUserFullInfo, new V2TIMCallback() {
@Override
public void onError(int code, String desc) {
}
@Override OTONetManager.getInstance(EditNameActivity.this).setFiled("user_nicename", content, new com.yunbao.common.http.base.HttpCallback<HttpCallbackModel>() {
public void onSuccess() { @Override
} public void onSuccess(HttpCallbackModel data) {
}); if (data.getCode() == 0) {
} UserBean u = CommonAppConfig.getInstance().getUserBean();
Intent intent = getIntent(); if (u != null) {
intent.putExtra(Constants.NICK_NAME, content); u.setUserNiceName(content);
setResult(RESULT_OK, intent); V2TIMUserFullInfo v2TIMUserFullInfo = new V2TIMUserFullInfo();
finish(); v2TIMUserFullInfo.setNickname(content);
V2TIMManager.getInstance().setSelfInfo(v2TIMUserFullInfo, new V2TIMCallback() {
@Override
public void onError(int code, String desc) {
}
@Override
public void onSuccess() {
}
});
} }
} else if (code == 2001) { Intent intent = getIntent();
intent.putExtra(Constants.NICK_NAME, content);
setResult(RESULT_OK, intent);
finish();
} else if (data.getCode() == 2001) {
//余额不足跳转支付页面 //余额不足跳转支付页面
RouteUtil.forwardMyCoin(mContext); RouteUtil.forwardMyCoin(mContext);
ToastUtil.show(msg); ToastUtil.show(data.getMsg());
} else { } else {
ToastUtil.show(msg); ToastUtil.show(data.getMsg());
} }
} }
@Override
public void onError(String error) {
}
}); });
} }

View File

@ -10,8 +10,6 @@ import android.widget.TextView;
import android.widget.Toast; import android.widget.Toast;
import com.alibaba.android.arouter.facade.annotation.Route; import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.bigkoo.pickerview.builder.TimePickerBuilder; import com.bigkoo.pickerview.builder.TimePickerBuilder;
import com.bigkoo.pickerview.listener.OnTimeSelectListener; import com.bigkoo.pickerview.listener.OnTimeSelectListener;
import com.bigkoo.pickerview.view.TimePickerView; import com.bigkoo.pickerview.view.TimePickerView;
@ -20,7 +18,6 @@ import com.sahooz.library.Country;
import com.sahooz.library.CountryPicker; import com.sahooz.library.CountryPicker;
import com.sahooz.library.OnPick; import com.sahooz.library.OnPick;
import com.shayu.onetoone.R; import com.shayu.onetoone.R;
import com.shayu.onetoone.activity.login.CompleteActivity;
import com.shayu.onetoone.bean.AvatarBean; import com.shayu.onetoone.bean.AvatarBean;
import com.shayu.onetoone.manager.OTONetManager; import com.shayu.onetoone.manager.OTONetManager;
import com.shayu.onetoone.manager.RouteManager; import com.shayu.onetoone.manager.RouteManager;
@ -114,6 +111,12 @@ public class EditProfileActivity extends AbsActivity {
showData(u); showData(u);
} }
}); });
findViewById(R.id.btn_person).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
RouteManager.forwaradAuthActivity();
}
});
/*if (mUserBean != null) { /*if (mUserBean != null) {
showData(mUserBean); showData(mUserBean);
} else { } else {
@ -150,21 +153,23 @@ public class EditProfileActivity extends AbsActivity {
avatarUrl = data.getAvatar(); avatarUrl = data.getAvatar();
ToastUtil.show("上传成功"); ToastUtil.show("上传成功");
OTONetManager.getInstance(mContext).setInfo(avatarUrl, mName.getText().toString(), userSex, mBirthday.getText().toString(), new com.yunbao.common.http.base.HttpCallback<HttpCallbackModel>() { OTONetManager.getInstance(EditProfileActivity.this).setFiled("avatar", avatarUrl, new com.yunbao.common.http.base.HttpCallback<HttpCallbackModel>() {
@Override @Override
public void onSuccess(HttpCallbackModel data) { public void onSuccess(HttpCallbackModel data) {
Toast.makeText(mContext, data.getMsg(), Toast.LENGTH_SHORT).show(); if (data.getCode() == 0) {
V2TIMUserFullInfo v2TIMUserFullInfo = new V2TIMUserFullInfo(); Toast.makeText(mContext, data.getMsg(), Toast.LENGTH_SHORT).show();
v2TIMUserFullInfo.setFaceUrl(avatarUrl); V2TIMUserFullInfo v2TIMUserFullInfo = new V2TIMUserFullInfo();
V2TIMManager.getInstance().setSelfInfo(v2TIMUserFullInfo, new V2TIMCallback() { v2TIMUserFullInfo.setFaceUrl(avatarUrl);
@Override V2TIMManager.getInstance().setSelfInfo(v2TIMUserFullInfo, new V2TIMCallback() {
public void onError(int code, String desc) { @Override
} public void onError(int code, String desc) {
}
@Override @Override
public void onSuccess() { public void onSuccess() {
} }
}); });
}
} }
@Override @Override
@ -189,7 +194,6 @@ public class EditProfileActivity extends AbsActivity {
}); });
} }
@Override @Override
public void onBackPressed() { public void onBackPressed() {
if (userModel.getUserInfoComplete() == 1) { if (userModel.getUserInfoComplete() == 1) {
@ -258,16 +262,22 @@ public class EditProfileActivity extends AbsActivity {
@Override @Override
public void onSex(int sex) { public void onSex(int sex) {
userSex = sex; userSex = sex;
MainHttpUtil.updateFields("{\"sex\":\"" + sex + "\"}", new HttpCallback() {
OTONetManager.getInstance(EditProfileActivity.this).setFiled("sex", String.valueOf(sex), new com.yunbao.common.http.base.HttpCallback<HttpCallbackModel>() {
@Override @Override
public void onSuccess(int code, String msg, String[] info) { public void onSuccess(HttpCallbackModel data) {
if (code == 0 && info.length > 0) { if (data.getCode() == 0) {
JSONObject obj = JSON.parseObject(info[0]); ToastUtil.show(data.getMsg());
ToastUtil.show(obj.getString("msg"));
userModel.setSex(sex); userModel.setSex(sex);
showData(userModel); showData(userModel);
} }
} }
@Override
public void onError(String error) {
}
}); });
} }
})).show(); })).show();
@ -276,26 +286,29 @@ public class EditProfileActivity extends AbsActivity {
@Override @Override
public void onPick(final Country country) { public void onPick(final Country country) {
mCity.setText(country.name); mCity.setText(country.name);
MainHttpUtil.updateFields("{\"location\":\"" + country.name + "\"}", new HttpCallback() {
@Override
public void onSuccess(int code, String msg, String[] info) {
if (code == 0) {
JSONObject obj = JSON.parseObject(info[0]);
if (info.length > 0) {
UserBean u = CommonAppConfig.getInstance().getUserBean();
if (u != null) {
u.setLocation(country.name);
}
if (userModel != null) {
userModel.setLocation(country.name);
}
showData(userModel); OTONetManager.getInstance(EditProfileActivity.this).setFiled("location", country.name, new com.yunbao.common.http.base.HttpCallback<HttpCallbackModel>() {
EventBus.getDefault().post(new UpdateFieldEvent()); @Override
public void onSuccess(HttpCallbackModel data) {
if (data.getCode() == 0) {
ToastUtil.show(data.getMsg());
UserBean u = CommonAppConfig.getInstance().getUserBean();
if (u != null) {
u.setLocation(country.name);
} }
ToastUtil.show(obj.getString("msg")); if (userModel != null) {
userModel.setLocation(country.name);
}
showData(userModel);
EventBus.getDefault().post(new UpdateFieldEvent());
} }
} }
@Override
public void onError(String error) {
}
}); });
} }
}).show(getSupportFragmentManager(), "country"); }).show(getSupportFragmentManager(), "country");
@ -305,6 +318,8 @@ public class EditProfileActivity extends AbsActivity {
.putExtra("token", CommonAppConfig.getInstance().getToken()) .putExtra("token", CommonAppConfig.getInstance().getToken())
.putExtra("isBind", isBind) .putExtra("isBind", isBind)
.putExtra("mobile", mobile));*/ .putExtra("mobile", mobile));*/
} else if (i == R.id.auth) {
RouteManager.forwaradAuthActivity();
} }
} }
@ -352,21 +367,23 @@ public class EditProfileActivity extends AbsActivity {
avatarUrl = userAvatar1; avatarUrl = userAvatar1;
ImgLoader.display(EditProfileActivity.this, avatarUrl, mAvatar); ImgLoader.display(EditProfileActivity.this, avatarUrl, mAvatar);
OTONetManager.getInstance(mContext).setInfo(avatarUrl, mName.getText().toString(), userSex, mBirthday.getText().toString(), new com.yunbao.common.http.base.HttpCallback<HttpCallbackModel>() { OTONetManager.getInstance(EditProfileActivity.this).setFiled("avatar", avatarUrl, new com.yunbao.common.http.base.HttpCallback<HttpCallbackModel>() {
@Override @Override
public void onSuccess(HttpCallbackModel data) { public void onSuccess(HttpCallbackModel data) {
Toast.makeText(mContext, data.getMsg(), Toast.LENGTH_SHORT).show(); Toast.makeText(mContext, data.getMsg(), Toast.LENGTH_SHORT).show();
V2TIMUserFullInfo v2TIMUserFullInfo = new V2TIMUserFullInfo(); if (data.getCode() == 0) {
v2TIMUserFullInfo.setFaceUrl(avatarUrl); V2TIMUserFullInfo v2TIMUserFullInfo = new V2TIMUserFullInfo();
V2TIMManager.getInstance().setSelfInfo(v2TIMUserFullInfo, new V2TIMCallback() { v2TIMUserFullInfo.setFaceUrl(avatarUrl);
@Override V2TIMManager.getInstance().setSelfInfo(v2TIMUserFullInfo, new V2TIMCallback() {
public void onError(int code, String desc) { @Override
} public void onError(int code, String desc) {
}
@Override @Override
public void onSuccess() { public void onSuccess() {
} }
}); });
}
} }
@Override @Override
@ -374,7 +391,6 @@ public class EditProfileActivity extends AbsActivity {
} }
}); });
//txtChoose.setVisibility(View.GONE); //txtChoose.setVisibility(View.GONE);
}, isCamera -> { }, isCamera -> {
if (isCamera) { if (isCamera) {
@ -436,31 +452,31 @@ public class EditProfileActivity extends AbsActivity {
month = calendar.get(Calendar.MONTH); month = calendar.get(Calendar.MONTH);
day = calendar.get(Calendar.DAY_OF_MONTH); day = calendar.get(Calendar.DAY_OF_MONTH);
String strbri = year + "-" + (month + 1) + "-" + day; String strbir = year + "-" + (month + 1) + "-" + day;
mBirthday.setText(strbri); mBirthday.setText(strbir);
OTONetManager.getInstance(EditProfileActivity.this).setFiled("birthday", strbir, new com.yunbao.common.http.base.HttpCallback<HttpCallbackModel>() {
MainHttpUtil.updateFields("{\"birthday\":\"" + strbri + "\"}", new HttpCallback() {
@Override @Override
public void onSuccess(int code, String msg, String[] info) { public void onSuccess(HttpCallbackModel data) {
if (code == 0) { if (data.getCode() == 0) {
if (info.length > 0) { mUserBean.setBirthday(strbir);
ToastUtil.show(JSON.parseObject(info[0]).getString("msg")); mBirthday.setText(strbir);
mUserBean.setBirthday(strbri);
mBirthday.setText(strbri);
if (userModel != null) { if (userModel != null) {
userModel.setBirthday(strbri); userModel.setBirthday(strbir);
}
showData(userModel);
EventBus.getDefault().post(new UpdateFieldEvent());
} }
} else {
ToastUtil.show(msg); showData(userModel);
EventBus.getDefault().post(new UpdateFieldEvent());
} }
} }
@Override
public void onError(String error) {
}
}); });
} }
}).setCancelText("生日").setSubmitColor(getResources().getColor(R.color.blue01)).setSubmitText("完成").setContentTextSize(20).setDate(selectedDate).build(); }).setCancelText("生日").setSubmitColor(getResources().getColor(R.color.blue01)).setSubmitText("完成").setContentTextSize(20).setDate(selectedDate).build();
pvTime.show(); pvTime.show();
@ -704,21 +720,23 @@ public class EditProfileActivity extends AbsActivity {
mCity.setText(location); mCity.setText(location);
} }
MainHttpUtil.updateFields("{\"location\":\"" + location + "\"}", new HttpCallback() { OTONetManager.getInstance(EditProfileActivity.this).setFiled("location", location, new com.yunbao.common.http.base.HttpCallback<HttpCallbackModel>() {
@Override @Override
public void onSuccess(int code, String msg, String[] info) { public void onSuccess(HttpCallbackModel data) {
if (code == 0) { ToastUtil.show(data.getMsg());
JSONObject obj = JSON.parseObject(info[0]); if (data.getCode() == 0) {
if (info.length > 0) { UserBean u = CommonAppConfig.getInstance().getUserBean();
UserBean u = CommonAppConfig.getInstance().getUserBean(); if (u != null) {
if (u != null) { u.setLocation(location);
u.setLocation(location);
}
EventBus.getDefault().post(new UpdateFieldEvent());
} }
ToastUtil.show(obj.getString("msg")); EventBus.getDefault().post(new UpdateFieldEvent());
} }
} }
@Override
public void onError(String error) {
}
}); });
} }
}); });

View File

@ -9,11 +9,13 @@ import android.widget.EditText;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.shayu.onetoone.R; import com.shayu.onetoone.R;
import com.shayu.onetoone.manager.OTONetManager;
import com.shayu.onetoone.utils.MainHttpConsts; import com.shayu.onetoone.utils.MainHttpConsts;
import com.shayu.onetoone.utils.MainHttpUtil; import com.shayu.onetoone.utils.MainHttpUtil;
import com.yunbao.common.CommonAppConfig; import com.yunbao.common.CommonAppConfig;
import com.yunbao.common.Constants; import com.yunbao.common.Constants;
import com.yunbao.common.activity.AbsActivity; import com.yunbao.common.activity.AbsActivity;
import com.yunbao.common.bean.HttpCallbackModel;
import com.yunbao.common.bean.UserBean; import com.yunbao.common.bean.UserBean;
import com.yunbao.common.http.HttpCallback; import com.yunbao.common.http.HttpCallback;
import com.yunbao.common.utils.ToastUtil; import com.yunbao.common.utils.ToastUtil;
@ -63,26 +65,29 @@ public class EditSignActivity extends AbsActivity {
ToastUtil.show(R.string.edit_profile_sign_empty); ToastUtil.show(R.string.edit_profile_sign_empty);
return; return;
} }
MainHttpUtil.updateFields("{\"signature\":\"" + content + "\"}", new HttpCallback() {
OTONetManager.getInstance(EditSignActivity.this).setFiled("signature", content, new com.yunbao.common.http.base.HttpCallback<HttpCallbackModel>() {
@Override @Override
public void onSuccess(int code, String msg, String[] info) { public void onSuccess(HttpCallbackModel data) {
if (code == 0) { if (data.getCode() == 0) {
if (info.length > 0) { ToastUtil.show(data.getMsg());
JSONObject obj = JSON.parseObject(info[0]); UserBean u = CommonAppConfig.getInstance().getUserBean();
ToastUtil.show(obj.getString("msg"));
UserBean u = CommonAppConfig.getInstance().getUserBean();
// if (u != null) { // if (u != null) {
// u.setUserNiceName(content); // u.setUserNiceName(content);
// } // }
Intent intent = getIntent(); Intent intent = getIntent();
intent.putExtra(Constants.SIGN, content); intent.putExtra(Constants.SIGN, content);
setResult(RESULT_OK, intent); setResult(RESULT_OK, intent);
finish(); finish();
}
} else { } else {
ToastUtil.show(msg); ToastUtil.show(data.getMsg());
} }
} }
@Override
public void onError(String error) {
}
}); });
} }

View File

@ -0,0 +1,56 @@
package com.shayu.onetoone.bean;
import com.yunbao.common.bean.BaseModel;
public class AuthBean extends BaseModel {
private int name_auth; //审核状态 1未提交 2通过 3已提交 4驳回
private String auth_front; //身份证正面
private String auth_back; //身份证反面
private String auth_remark; //审核备注
public AuthBean(int name_auth, String auth_front, String auth_back, String auth_remark) {
this.name_auth = name_auth;
this.auth_front = auth_front;
this.auth_back = auth_back;
this.auth_remark = auth_remark;
}
public int getName_auth() {
return name_auth;
}
public void setName_auth(int name_auth) {
this.name_auth = name_auth;
}
public String getAuth_front() {
return auth_front;
}
public void setAuth_front(String auth_front) {
this.auth_front = auth_front;
}
public String getAuth_back() {
return auth_back;
}
public void setAuth_back(String auth_back) {
this.auth_back = auth_back;
}
public String getAuth_remark() {
return auth_remark;
}
public void setAuth_remark(String auth_remark) {
this.auth_remark = auth_remark;
}
public AuthBean() {
}
}

View File

@ -5,6 +5,7 @@ import android.net.Uri;
import android.util.Log; import android.util.Log;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.shayu.onetoone.bean.AuthBean;
import com.shayu.onetoone.bean.AvatarBean; import com.shayu.onetoone.bean.AvatarBean;
import com.shayu.onetoone.bean.CustomBean; import com.shayu.onetoone.bean.CustomBean;
import com.shayu.onetoone.bean.FollowBean; import com.shayu.onetoone.bean.FollowBean;
@ -848,5 +849,84 @@ public class OTONetManager {
}).isDisposed(); }).isDisposed();
} }
/**
* 设置
*/
public void setFiled(
String key, String val,
HttpCallback<HttpCallbackModel> callback) {
API.get().otoApi(mContext).setFiled(key, val)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Consumer<ResponseModel<List<BaseModel>>>() {
@Override
public void accept(ResponseModel<List<BaseModel>> listResponseModel) throws Exception {
if (listResponseModel.getData().getCode() == 0) {
callback.onSuccess(new HttpCallbackModel(listResponseModel.getData().getCode(), listResponseModel.getData().getMsg()));
} else {
callback.onError(listResponseModel.getData().getMsg());
}
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
}
}).isDisposed();
}
/**
* 實名認證
*/
public void setAuthInfo(
String authFront, String authBack,
HttpCallback<HttpCallbackModel> callback) {
API.get().otoApi(mContext).setAuthInfo(authFront, authBack)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Consumer<ResponseModel<List<BaseModel>>>() {
@Override
public void accept(ResponseModel<List<BaseModel>> listResponseModel) throws Exception {
if (listResponseModel.getData().getCode() == 0) {
callback.onSuccess(new HttpCallbackModel(listResponseModel.getData().getCode(), listResponseModel.getData().getMsg()));
} else {
callback.onError(listResponseModel.getData().getMsg());
}
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
}
}).isDisposed();
}
/**
* 获取实名认证
*
* @param callback
*/
public void getAuthInfo(HttpCallback<AuthBean> callback) {
API.get().otoApi(mContext)
.getAuthInfo()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(model -> {
if (callback != null) {
callback.onSuccess(model.getData().getInfo());
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
Log.e(TAG, "accept: ", throwable);
if (callback != null) {
callback.onError(mContext.getString(com.yunbao.common.R.string.net_error));
}
}
}).isDisposed();
}
} }

View File

@ -18,13 +18,32 @@ public class RouteManager {
public static final String ACTIVITY_HOME_SEARCH = "/activity/HomeSearchActivity"; public static final String ACTIVITY_HOME_SEARCH = "/activity/HomeSearchActivity";
public static final String ACTIVITY_HOME_SCREEN = "/activity/HomeScreenActivity"; public static final String ACTIVITY_HOME_SCREEN = "/activity/HomeScreenActivity";
public static final String ACTIVITY_CALL_VIDEO = "/activity/CallVideoActivity"; public static final String ACTIVITY_CALL_VIDEO = "/activity/CallVideoActivity";
public static final String PATH_EDITPROFILE = "/main/EditProfileActivity"; public static final String PATH_EDITPROFILE = "/activity/EditProfileActivity";
//设置基本资料 //设置基本资料
public static final String ACTIVITY_COMPLETE = "/activity/CompleteActivity"; public static final String ACTIVITY_COMPLETE = "/activity/CompleteActivity";
//选择标签 //选择标签
public static final String ACTIVITY_CHOOSE_LABEL = "/activity/ChooseLabelActivity"; public static final String ACTIVITY_CHOOSE_LABEL = "/activity/ChooseLabelActivity";
//真人认证
public static final String ACTIVITY_AUTH = "/activity/AuthActivity";
//达人认证
public static final String ACTIVITY_AUTH_BLOGGER = "/activity/AuthBloggerActivity";
/**
* 达人认证
*/
public static void forwardAuthBloggerActivity() {
ARouter.getInstance().build(ACTIVITY_AUTH_BLOGGER).navigation();
}
/**
* 真人认证
*/
public static void forwaradAuthActivity() {
ARouter.getInstance().build(ACTIVITY_AUTH).navigation();
}
/** /**
* 选择标签 * 选择标签

View File

@ -1,7 +1,7 @@
package com.shayu.onetoone.network; package com.shayu.onetoone.network;
import com.shayu.onetoone.bean.AuthBean;
import com.shayu.onetoone.bean.AvatarBean; import com.shayu.onetoone.bean.AvatarBean;
import com.shayu.onetoone.bean.CustomBean;
import com.shayu.onetoone.bean.FollowBean; import com.shayu.onetoone.bean.FollowBean;
import com.shayu.onetoone.bean.GiftBean; import com.shayu.onetoone.bean.GiftBean;
import com.shayu.onetoone.bean.GreetBean; import com.shayu.onetoone.bean.GreetBean;
@ -16,7 +16,6 @@ import com.shayu.onetoone.bean.SystemMessageBean;
import com.shayu.onetoone.bean.TargetUserInfoBean; import com.shayu.onetoone.bean.TargetUserInfoBean;
import com.shayu.onetoone.bean.UserBean; import com.shayu.onetoone.bean.UserBean;
import com.yunbao.common.bean.BaseModel; import com.yunbao.common.bean.BaseModel;
import com.yunbao.common.bean.HttpCallbackModel;
import com.yunbao.common.bean.IMLoginModel; import com.yunbao.common.bean.IMLoginModel;
import com.yunbao.common.bean.UserAvatarSelectBean; import com.yunbao.common.bean.UserAvatarSelectBean;
import com.yunbao.common.http.ResponseModel; import com.yunbao.common.http.ResponseModel;
@ -212,6 +211,31 @@ public interface OneToOneApi {
@Field("labels") String avatar @Field("labels") String avatar
); );
/**
* 设置基本信息
*/
@GET("/api/public/?service=Friendappinfos.setFiled")
Observable<ResponseModel<List<BaseModel>>> setFiled(
@Query("key") String key,
@Query("val") String val
);
/**
* 真人认证
*/
@GET("/api/public/?service=Friendappinfos.setAuth")
Observable<ResponseModel<List<BaseModel>>> setAuthInfo(
@Query("auth_front") String authFront,
@Query("auth_back") String authBack
);
/**
* 获取真人认证信息
*/
@GET("/api/public/?service=Friendappinfos.getAuth")
Observable<ResponseModel<AuthBean>> getAuthInfo(
);
} }

View File

@ -0,0 +1,65 @@
package com.shayu.onetoone.upload;
import java.io.File;
/**
* 文件上傳
*/
public class UploadBean {
private File mOriginFile;//要被上传的源文件
private String mRemoteFileName;//上传成功后在云存储上的文件名字
private String mRemoteAccessUrl;//上传成功后在云存储上的访问地址
private boolean mSuccess;//是否上传成功了
public UploadBean() {
}
public UploadBean(File originFile) {
mOriginFile = originFile;
}
public File getOriginFile() {
return mOriginFile;
}
public void setOriginFile(File originFile) {
mOriginFile = originFile;
}
public String getRemoteFileName() {
return mRemoteFileName;
}
public void setRemoteFileName(String remoteFileName) {
mRemoteFileName = remoteFileName;
}
public String getRemoteAccessUrl() {
return mRemoteAccessUrl;
}
public void setRemoteAccessUrl(String remoteAccessUrl) {
mRemoteAccessUrl = remoteAccessUrl;
}
public boolean isSuccess() {
return mSuccess;
}
public void setSuccess(boolean success) {
mSuccess = success;
}
public void setEmpty() {
mOriginFile = null;
mRemoteFileName = null;
mRemoteAccessUrl = null;
}
public boolean isEmpty() {
return mOriginFile == null && mRemoteFileName == null && mRemoteAccessUrl == null;
}
}

View File

@ -0,0 +1,11 @@
package com.shayu.onetoone.upload;
import java.util.List;
/**
* 文件上传回调
*/
public interface UploadCallback {
void onFinish(List<UploadBean> list, boolean success);
}

View File

@ -0,0 +1,91 @@
package com.shayu.onetoone.upload;
import android.content.Context;
import com.shayu.onetoone.bean.AvatarBean;
import com.shayu.onetoone.manager.OTONetManager;
import com.yunbao.common.http.base.HttpCallback;
import java.util.List;
/**
* 文件上传
*/
public class UploadCustomImpl implements UploadStrategy {
private static final String TAG = "UploadQnImpl";
private Context mContext;
private List<UploadBean> mList;
private int mIndex;
private boolean mNeedCompress;
private UploadCallback mUploadCallback;
public UploadCustomImpl(Context context) {
mContext = context;
}
@Override
public void upload(List<UploadBean> list, boolean needCompress, UploadCallback callback) {
if (callback == null) {
return;
}
if (list == null || list.size() == 0) {
callback.onFinish(list, false);
return;
}
boolean hasFile = false;
for (UploadBean bean : list) {
if (bean.getOriginFile() != null) {
hasFile = true;
break;
}
}
if (!hasFile) {
callback.onFinish(list, true);
return;
}
mList = list;
mNeedCompress = needCompress;
mUploadCallback = callback;
mIndex = 0;
uploadNext();
}
@Override
public void cancelUpload() {
}
private void uploadNext() {
UploadBean bean = null;
while (mIndex < mList.size() && (bean = mList.get(mIndex)).getOriginFile() == null) {
mIndex++;
}
if (mIndex >= mList.size() || bean == null) {
if (mUploadCallback != null) {
mUploadCallback.onFinish(mList, true);
}
return;
}
upload(bean);
}
private void upload(UploadBean bean) {
OTONetManager.getInstance(mContext).updateFile(bean.getOriginFile(), new HttpCallback<AvatarBean>() {
@Override
public void onSuccess(AvatarBean data) {
if (data != null) {
bean.setRemoteAccessUrl(data.getAvatar());
bean.setSuccess(true);
uploadNext();
}
}
@Override
public void onError(String error) {
}
});
}
}

View File

@ -0,0 +1,24 @@
package com.shayu.onetoone.upload;
import java.util.List;
/**
*
*/
public interface UploadStrategy {
/**
* 执行上传
*
* @param list 被上传的文件列表
* @param needCompress 是否需要压缩
* @param callback 上传回调
*/
void upload(List<UploadBean> list, boolean needCompress, UploadCallback callback);
/**
* 取消上传
*/
void cancelUpload();
}

View File

@ -404,8 +404,8 @@ public class MainHttpUtil {
* @param fields 用户资料 ,以json形式出现 * @param fields 用户资料 ,以json形式出现
*/ */
public static void updateFields(String fields, HttpCallback callback) { public static void updateFields(String fields, HttpCallback callback) {
HttpClient.getInstance().get("User.updateFields", MainHttpConsts.UPDATE_FIELDS) HttpClient.getInstance().get("Friendappinfos.setFiled", MainHttpConsts.UPDATE_FIELDS)
.params("fields", fields) .params("key", fields)
.execute(callback); .execute(callback);
} }

View File

@ -0,0 +1,71 @@
package com.shayu.onetoone.view;
import android.content.Context;
import android.view.View;
import android.widget.ImageView;
import androidx.annotation.NonNull;
import com.lxj.xpopup.core.BottomPopupView;
import com.shayu.onetoone.R;
public class UserAuthPopup extends BottomPopupView implements View.OnClickListener {
private ImageView camera;
private ImageView album;
private Context mContext;
public interface OnItemClickListener<T> {
void onItemClick(String userAvatar);
}
private onIsCameraClickListener onIsCameraClickListener;
public interface onIsCameraClickListener {
void onIsCamera(boolean isCamera);
}
public UserAuthPopup(@NonNull Context context, onIsCameraClickListener onIsCameraClickListener) {
super(context);
this.mContext = context;
this.onIsCameraClickListener = onIsCameraClickListener;
}
@Override
public void onClick(View v) {
}
// 返回自定义弹窗的布局
@Override
protected int getImplLayoutId() {
return R.layout.dialog_auth_avatar;
}
// 执行初始化操作比如findView设置点击或者任何你弹窗内的业务逻辑
@Override
protected void onCreate() {
super.onCreate();
initView();
}
private void initView() {
camera = findViewById(R.id.camera);
album = findViewById(R.id.album);
camera.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
onIsCameraClickListener.onIsCamera(true);
dialog.dismiss();
}
});
album.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
onIsCameraClickListener.onIsCamera(false);
dialog.dismiss();
}
});
}
}

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:width="136dp" android:height="54dp">
<shape android:shape="rectangle">
<solid android:color="#D1D1D1" />
<corners android:bottomLeftRadius="20dp"
android:bottomRightRadius="20dp"
android:topLeftRadius="20dp"
android:topRightRadius="20dp" />
</shape>
</item>
</selector>

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:width="136dp" android:height="54dp">
<shape android:shape="rectangle">
<solid android:color="#8E7DDF" />
<corners
android:bottomLeftRadius="20dp"
android:bottomRightRadius="20dp"
android:topLeftRadius="20dp"
android:topRightRadius="20dp" />
</shape>
</item>
</selector>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:width="136dp" android:height="54dp">
<shape android:shape="rectangle">
<solid android:color="@color/white" />
<corners android:bottomLeftRadius="20dp"
android:bottomRightRadius="20dp"
android:topLeftRadius="20dp"
android:topRightRadius="20dp" />
</shape>
</item>
</selector>

View File

@ -0,0 +1,131 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F7F8F9"
android:orientation="vertical">
<include layout="@layout/view_title_custom" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="真人說明"
android:textColor="@color/black2"
android:textSize="18sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="請上傳您的身份證正反面完成真人認證,完成認證可獲得跟多消息推送并提高聊天,收禮的收益比例"
android:textColor="@color/text_gray"
android:textSize="14sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:text="身份證正面"
android:textColor="@color/black2"
android:textSize="18sp"
android:textStyle="bold" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="180dp"
android:layout_marginLeft="40dp"
android:layout_marginTop="10dp"
android:layout_marginRight="40dp">
<ImageView
android:id="@+id/image1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:scaleType="centerCrop"
android:src="@mipmap/auth_add_bg" />
<ImageView
android:id="@+id/image11"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:scaleType="centerCrop"
android:src="@mipmap/auth_add_img" />
</RelativeLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:text="身份證背面"
android:textColor="@color/black2"
android:textSize="18sp"
android:textStyle="bold" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="180dp"
android:layout_marginLeft="40dp"
android:layout_marginTop="10dp"
android:layout_marginRight="40dp">
<ImageView
android:id="@+id/image2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:scaleType="centerCrop"
android:src="@mipmap/auth_add_bg" />
<ImageView
android:id="@+id/image22"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:scaleType="centerCrop"
android:src="@mipmap/auth_add_img" />
</RelativeLayout>
<TextView
android:id="@+id/remake"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:text="身份證背面"
android:textColor="@color/red"
android:textSize="14sp" />
<TextView
android:id="@+id/submit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="70dp"
android:layout_marginTop="20dp"
android:layout_marginRight="70dp"
android:background="@drawable/bg_auth_submit_1"
android:gravity="center"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:text="發起審核"
android:textColor="@color/black2"
android:textSize="16sp"
android:textStyle="bold" />
</LinearLayout>

View File

@ -0,0 +1,311 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F7F8F9"
android:orientation="vertical">
<include layout="@layout/view_title_custom" />
<TextView
android:layout_width="match_parent"
android:layout_height="30dp"
android:background="#FEE9EE"
android:gravity="center"
android:text="带*为必填项,為保障您的利益,請如實填寫"
android:textColor="#E26891"
android:textSize="14sp" />
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="20dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="性别"
android:textColor="@color/textColor"
android:textSize="14sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="30dp"
android:text="*"
android:textColor="#FF5730"
android:textSize="9sp" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/sex_radio_2" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="男"
android:textColor="@color/black2"
android:textSize="16dp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="30dp">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/sex_radio_1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="女"
android:textColor="@color/black2"
android:textSize="16dp" />
</LinearLayout>
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="真实姓名"
android:textColor="@color/textColor"
android:textSize="14sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="60dp"
android:text="*"
android:textColor="#FF5730"
android:textSize="9sp" />
</RelativeLayout>
<EditText
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:background="@drawable/bg_edit"
android:hint="請填寫您的真實姓名"
android:padding="10dp"
android:textColor="@color/black2"
android:textColorHint="#B5B5B5"
android:textSize="14dp" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="手机号码"
android:textColor="@color/textColor"
android:textSize="14sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="60dp"
android:text="*"
android:textColor="#FF5730"
android:textSize="9sp" />
</RelativeLayout>
<EditText
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:background="@drawable/bg_edit"
android:hint="請填寫您的真實姓名"
android:padding="10dp"
android:textColor="@color/black2"
android:textColorHint="#B5B5B5"
android:textSize="14dp" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="上传手持证件照"
android:textColor="@color/textColor"
android:textSize="14sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="100dp"
android:text="*"
android:textColor="#FF5730"
android:textSize="9sp" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp">
<RelativeLayout
android:layout_width="0dp"
android:layout_height="100dp"
android:layout_weight="1">
<ImageView
android:id="@+id/image1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:scaleType="centerCrop"
android:src="@mipmap/auth_add_bg" />
<ImageView
android:id="@+id/image11"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:scaleType="centerCrop"
android:src="@mipmap/auth_add_img" />
</RelativeLayout>
<ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_marginLeft="20dp"
android:layout_weight="1"
android:scaleType="centerCrop"
android:src="@mipmap/auth_img" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_weight="1"
android:gravity="center"
android:text="請將证件頭像朝向前方"
android:textColor="@color/textColor"
android:textSize="12sp" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_weight="1"
android:gravity="center"
android:text="參考圖"
android:textColor="@color/textColor"
android:textSize="12sp" />
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="上傳背景圖片"
android:textColor="@color/textColor"
android:textSize="14sp"
android:textStyle="bold" />
</RelativeLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
app:spanCount="3"
tools:itemCount="9"
tools:listitem="@layout/item_auth_blogger_img" />
</LinearLayout>
</ScrollView>
<TextView
android:id="@+id/submit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="70dp"
android:layout_marginTop="20dp"
android:layout_marginRight="70dp"
android:background="@drawable/bg_auth_submit_1"
android:gravity="center"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:text="發起審核"
android:textColor="@color/black2"
android:textSize="16sp"
android:textStyle="bold" />
</LinearLayout>

View File

@ -8,417 +8,400 @@
<include layout="@layout/view_title_custom" /> <include layout="@layout/view_title_custom" />
<LinearLayout <RelativeLayout
android:layout_width="match_parent" android:id="@+id/btn_avatar"
android:layout_height="wrap_content" style="@style/edit_profile_group"
android:layout_margin="10dp" android:onClick="editProfileClick">
android:background="@drawable/setting_item_top"
android:orientation="vertical"
android:padding="10dp">
<RelativeLayout <TextView
android:id="@+id/btn_avatar" android:layout_width="wrap_content"
style="@style/edit_profile_group" android:layout_height="wrap_content"
android:onClick="editProfileClick"> android:layout_centerVertical="true"
android:text="頭像"
android:textColor="@color/textColor"
android:textSize="14sp" />
<TextView <com.makeramen.roundedimageview.RoundedImageView
android:layout_width="wrap_content" android:id="@+id/avatar"
android:layout_height="wrap_content" android:layout_width="46dp"
android:layout_centerVertical="true" android:layout_height="46dp"
android:text="頭像" android:layout_alignParentRight="true"
android:textColor="@color/textColor" android:layout_centerVertical="true"
android:textSize="14sp" /> android:layout_marginRight="25dp"
android:scaleType="centerCrop"
app:riv_oval="true" />
<com.makeramen.roundedimageview.RoundedImageView <ImageView
android:id="@+id/avatar" android:layout_width="16dp"
android:layout_width="46dp" android:layout_height="18dp"
android:layout_height="46dp" android:layout_alignParentRight="true"
android:layout_alignParentRight="true" android:layout_centerVertical="true"
android:layout_centerVertical="true" android:src="@mipmap/icon_arrow_right" />
android:layout_marginRight="25dp"
android:scaleType="centerCrop"
app:riv_oval="true" />
<ImageView </RelativeLayout>
android:layout_width="16dp"
android:layout_height="18dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@mipmap/icon_arrow_right" />
</RelativeLayout> <View
style="@style/line2"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:visibility="gone" />
<View <RelativeLayout
style="@style/line2" android:id="@+id/btn_name"
android:layout_marginLeft="15dp" style="@style/edit_profile_group"
android:layout_marginRight="15dp" android:onClick="editProfileClick">
android:visibility="gone" />
<RelativeLayout <TextView
android:id="@+id/btn_name" android:layout_width="wrap_content"
style="@style/edit_profile_group" android:layout_height="wrap_content"
android:onClick="editProfileClick"> android:layout_centerVertical="true"
android:text="暱稱"
android:textColor="@color/textColor"
android:textSize="14sp" />
<TextView <TextView
android:layout_width="wrap_content" android:id="@+id/name"
android:layout_height="wrap_content" android:layout_width="match_parent"
android:layout_centerVertical="true" android:layout_height="wrap_content"
android:text="暱稱" android:layout_centerVertical="true"
android:textColor="@color/textColor" android:layout_marginLeft="70dp"
android:textSize="14sp" /> android:layout_marginRight="25dp"
android:ellipsize="end"
android:gravity="right"
android:singleLine="true"
android:textColor="#353535"
android:textSize="14sp"
android:textStyle="bold" />
<TextView <ImageView
android:id="@+id/name" android:layout_width="16dp"
android:layout_width="match_parent" android:layout_height="18dp"
android:layout_height="wrap_content" android:layout_alignParentRight="true"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:layout_marginLeft="70dp" android:src="@mipmap/icon_arrow_right" />
android:layout_marginRight="25dp" </RelativeLayout>
android:ellipsize="end"
android:gravity="right"
android:singleLine="true"
android:textColor="#353535"
android:textSize="14sp"
android:textStyle="bold" />
<ImageView
android:layout_width="16dp"
android:layout_height="18dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@mipmap/icon_arrow_right" />
</RelativeLayout>
<View <View
style="@style/line2" style="@style/line2"
android:layout_marginLeft="15dp" android:layout_marginLeft="15dp"
android:layout_marginRight="15dp" android:layout_marginRight="15dp"
android:visibility="gone" /> android:visibility="gone" />
<RelativeLayout <RelativeLayout
android:id="@+id/btn_sign" android:id="@+id/btn_sign"
style="@style/edit_profile_group" style="@style/edit_profile_group"
android:onClick="editProfileClick"> android:onClick="editProfileClick">
<TextView <TextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:text="簽名" android:text="簽名"
android:textColor="@color/textColor" android:textColor="@color/textColor"
android:textSize="14sp" /> android:textSize="14sp" />
<TextView <TextView
android:id="@+id/sign" android:id="@+id/sign"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:layout_marginLeft="70dp" android:layout_marginLeft="70dp"
android:layout_marginRight="25dp" android:layout_marginRight="25dp"
android:ellipsize="end" android:ellipsize="end"
android:gravity="right" android:gravity="right"
android:singleLine="true" android:singleLine="true"
android:textColor="#353535" android:textColor="#353535"
android:textSize="14sp" android:textSize="14sp"
android:textStyle="bold" /> android:textStyle="bold" />
<ImageView <ImageView
android:layout_width="16dp" android:layout_width="16dp"
android:layout_height="18dp" android:layout_height="18dp"
android:layout_alignParentRight="true" android:layout_alignParentRight="true"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:src="@mipmap/icon_arrow_right" /> android:src="@mipmap/icon_arrow_right" />
</RelativeLayout> </RelativeLayout>
<View <View
style="@style/line2" style="@style/line2"
android:layout_marginLeft="15dp" android:layout_marginLeft="15dp"
android:layout_marginRight="15dp" android:layout_marginRight="15dp"
android:visibility="gone" /> android:visibility="gone" />
<RelativeLayout <RelativeLayout
android:id="@+id/btn_birthday" android:id="@+id/btn_birthday"
style="@style/edit_profile_group" style="@style/edit_profile_group"
android:onClick="editProfileClick"> android:onClick="editProfileClick">
<TextView <TextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:text="生日" android:text="生日"
android:textColor="@color/textColor" android:textColor="@color/textColor"
android:textSize="14sp" /> android:textSize="14sp" />
<TextView <TextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="30dp" android:layout_marginStart="30dp"
android:layout_marginTop="10dp" android:layout_marginTop="10dp"
android:text="*" android:text="*"
android:textColor="#FF5730" android:textColor="#FF5730"
android:textSize="9sp" /> android:textSize="9sp" />
<TextView <TextView
android:id="@+id/birthday" android:id="@+id/birthday"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:layout_marginLeft="70dp" android:layout_marginLeft="70dp"
android:layout_marginRight="25dp" android:layout_marginRight="25dp"
android:ellipsize="end" android:ellipsize="end"
android:gravity="right" android:gravity="right"
android:singleLine="true" android:singleLine="true"
android:textColor="#353535" android:textColor="#353535"
android:textSize="14sp" android:textSize="14sp"
android:textStyle="bold" /> android:textStyle="bold" />
<ImageView <ImageView
android:layout_width="16dp" android:layout_width="16dp"
android:layout_height="18dp" android:layout_height="18dp"
android:layout_alignParentRight="true" android:layout_alignParentRight="true"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:src="@mipmap/icon_arrow_right" /> android:src="@mipmap/icon_arrow_right" />
</RelativeLayout> </RelativeLayout>
<View <View
style="@style/line2" style="@style/line2"
android:layout_marginLeft="15dp" android:layout_marginLeft="15dp"
android:layout_marginRight="15dp" android:layout_marginRight="15dp"
android:visibility="gone" /> android:visibility="gone" />
<RelativeLayout <RelativeLayout
android:id="@+id/btn_sex" android:id="@+id/btn_sex"
style="@style/edit_profile_group" style="@style/edit_profile_group"
android:onClick="editProfileClick"> android:onClick="editProfileClick">
<TextView <TextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:text="性別" android:text="性別"
android:textColor="@color/textColor" android:textColor="@color/textColor"
android:textSize="14sp" /> android:textSize="14sp" />
<TextView <TextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="30dp" android:layout_marginStart="30dp"
android:layout_marginTop="10dp" android:layout_marginTop="10dp"
android:text="*" android:text="*"
android:textColor="#FF5730" android:textColor="#FF5730"
android:textSize="9sp" /> android:textSize="9sp" />
<TextView <TextView
android:id="@+id/sex" android:id="@+id/sex"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentRight="true" android:layout_alignParentRight="true"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:layout_marginRight="25dp" android:layout_marginRight="25dp"
android:textColor="#353535" android:textColor="#353535"
android:textSize="14sp" android:textSize="14sp"
android:textStyle="bold" /> android:textStyle="bold" />
<ImageView <ImageView
android:layout_width="16dp" android:layout_width="16dp"
android:layout_height="18dp" android:layout_height="18dp"
android:layout_alignParentRight="true" android:layout_alignParentRight="true"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:src="@mipmap/icon_arrow_right" /> android:src="@mipmap/icon_arrow_right" />
</RelativeLayout> </RelativeLayout>
<View
style="@style/line2"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:visibility="gone" />
<RelativeLayout
android:id="@+id/btn_city"
style="@style/edit_profile_group"
android:onClick="editProfileClick">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="所在地"
android:textColor="@color/textColor"
android:textSize="14sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="44dp"
android:layout_marginTop="10dp"
android:text="*"
android:textColor="#FF5730"
android:textSize="9sp" />
<TextView
android:id="@+id/city"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="70dp"
android:layout_marginRight="25dp"
android:ellipsize="end"
android:gravity="right"
android:singleLine="true"
android:textColor="#353535"
android:textSize="14sp"
android:textStyle="bold" />
<ImageView
android:layout_width="16dp"
android:layout_height="18dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@mipmap/icon_arrow_right" />
</RelativeLayout>
<View
style="@style/line2"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:visibility="gone" />
<RelativeLayout <View
android:id="@+id/rt_bind_phone" style="@style/line2"
style="@style/edit_profile_group" android:layout_marginLeft="15dp"
android:onClick="editProfileClick"> android:layout_marginRight="15dp"
android:visibility="gone" />
<TextView <RelativeLayout
android:layout_width="wrap_content" android:id="@+id/btn_city"
android:layout_height="wrap_content" style="@style/edit_profile_group"
android:layout_centerVertical="true" android:onClick="editProfileClick">
android:text="綁定手機"
android:textColor="@color/textColor"
android:textSize="14sp" />
<TextView <TextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="58dp" android:layout_centerVertical="true"
android:layout_marginTop="10dp" android:text="所在地"
android:text="*" android:textColor="@color/textColor"
android:textColor="#FF5730" android:textSize="14sp" />
android:textSize="9sp" />
<TextView <TextView
android:id="@+id/tv_bind_phone" android:layout_width="wrap_content"
android:layout_width="match_parent" android:layout_height="wrap_content"
android:layout_height="wrap_content" android:layout_marginStart="44dp"
android:layout_centerVertical="true" android:layout_marginTop="10dp"
android:layout_marginLeft="70dp" android:text="*"
android:layout_marginRight="25dp" android:textColor="#FF5730"
android:ellipsize="end" android:textSize="9sp" />
android:gravity="right"
android:hint="@string/bind_phone_text"
android:singleLine="true"
android:textColor="#353535"
android:textSize="14sp"
android:textStyle="bold" />
<ImageView <TextView
android:layout_width="16dp" android:id="@+id/city"
android:layout_height="18dp" android:layout_width="match_parent"
android:layout_alignParentRight="true" android:layout_height="wrap_content"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:src="@mipmap/icon_arrow_right" /> android:layout_marginLeft="70dp"
</RelativeLayout> android:layout_marginRight="25dp"
android:ellipsize="end"
android:gravity="right"
android:singleLine="true"
android:textColor="#353535"
android:textSize="14sp"
android:textStyle="bold" />
<RelativeLayout <ImageView
android:id="@+id/btn_person" android:layout_width="16dp"
style="@style/edit_profile_group" android:layout_height="18dp"
android:onClick="editProfileClick"> android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@mipmap/icon_arrow_right" />
</RelativeLayout>
<TextView <View
android:layout_width="wrap_content" style="@style/line2"
android:layout_height="wrap_content" android:layout_marginLeft="15dp"
android:layout_centerVertical="true" android:layout_marginRight="15dp"
android:text="真人認證" android:visibility="gone" />
android:textColor="@color/textColor"
android:textSize="14sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="58dp"
android:layout_marginTop="10dp"
android:text="*"
android:textColor="#FF5730"
android:textSize="9sp" />
<TextView <RelativeLayout
android:layout_width="match_parent" android:id="@+id/rt_bind_phone"
android:layout_height="wrap_content" style="@style/edit_profile_group"
android:layout_centerVertical="true" android:onClick="editProfileClick">
android:layout_marginLeft="70dp"
android:layout_marginRight="25dp"
android:ellipsize="end"
android:gravity="right"
android:singleLine="true"
android:textColor="#353535"
android:textSize="14sp"
android:textStyle="bold" />
<ImageView <TextView
android:layout_width="16dp" android:layout_width="wrap_content"
android:layout_height="18dp" android:layout_height="wrap_content"
android:layout_alignParentRight="true" android:layout_centerVertical="true"
android:layout_centerVertical="true" android:text="綁定手機"
android:src="@mipmap/icon_arrow_right" /> android:textColor="@color/textColor"
</RelativeLayout> android:textSize="14sp" />
<RelativeLayout <TextView
android:id="@+id/btn_like" android:layout_width="wrap_content"
style="@style/edit_profile_group" android:layout_height="wrap_content"
android:onClick="editProfileClick"> android:layout_marginStart="58dp"
android:layout_marginTop="10dp"
android:text="*"
android:textColor="#FF5730"
android:textSize="9sp" />
<TextView <TextView
android:layout_width="wrap_content" android:id="@+id/tv_bind_phone"
android:layout_height="wrap_content" android:layout_width="match_parent"
android:layout_centerVertical="true" android:layout_height="wrap_content"
android:text="興趣" android:layout_centerVertical="true"
android:textColor="@color/textColor" android:layout_marginLeft="70dp"
android:textSize="14sp" /> android:layout_marginRight="25dp"
android:ellipsize="end"
android:gravity="right"
android:hint="@string/bind_phone_text"
android:singleLine="true"
android:textColor="#353535"
android:textSize="14sp"
android:textStyle="bold" />
<TextView <ImageView
android:layout_width="wrap_content" android:layout_width="16dp"
android:layout_height="wrap_content" android:layout_height="18dp"
android:layout_marginStart="28dp" android:layout_alignParentRight="true"
android:layout_marginTop="10dp" android:layout_centerVertical="true"
android:text="*" android:src="@mipmap/icon_arrow_right" />
android:textColor="#FF5730" </RelativeLayout>
android:textSize="9sp" />
<TextView <RelativeLayout
android:layout_width="match_parent" android:id="@+id/btn_person"
android:layout_height="wrap_content" style="@style/edit_profile_group"
android:layout_centerVertical="true" android:onClick="editProfileClick">
android:layout_marginLeft="70dp"
android:layout_marginRight="25dp"
android:ellipsize="end"
android:gravity="right"
android:singleLine="true"
android:textColor="#353535"
android:textSize="14sp"
android:textStyle="bold" />
<ImageView <TextView
android:layout_width="16dp" android:layout_width="wrap_content"
android:layout_height="18dp" android:layout_height="wrap_content"
android:layout_alignParentRight="true" android:layout_centerVertical="true"
android:layout_centerVertical="true" android:text="真人認證"
android:src="@mipmap/icon_arrow_right" /> android:textColor="@color/textColor"
</RelativeLayout> android:textSize="14sp" />
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="58dp"
android:layout_marginTop="10dp"
android:text="*"
android:textColor="#FF5730"
android:textSize="9sp" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="70dp"
android:layout_marginRight="25dp"
android:ellipsize="end"
android:gravity="right"
android:singleLine="true"
android:textColor="#353535"
android:textSize="14sp"
android:textStyle="bold" />
<ImageView
android:layout_width="16dp"
android:layout_height="18dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@mipmap/icon_arrow_right" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/btn_like"
style="@style/edit_profile_group"
android:onClick="editProfileClick">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="興趣"
android:textColor="@color/textColor"
android:textSize="14sp" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="70dp"
android:layout_marginRight="25dp"
android:ellipsize="end"
android:gravity="right"
android:singleLine="true"
android:textColor="#353535"
android:textSize="14sp"
android:textStyle="bold" />
<ImageView
android:layout_width="16dp"
android:layout_height="18dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@mipmap/icon_arrow_right" />
</RelativeLayout>
<View <View
style="@style/line2" style="@style/line2"

View File

@ -182,6 +182,7 @@
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout
android:id="@+id/toBlogger"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:gravity="center_vertical" android:gravity="center_vertical"

View File

@ -0,0 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="100dp"
android:background="@drawable/bg_user_avatar"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="70dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="20dp"
android:gravity="center">
<ImageView
android:id="@+id/camera"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_weight="1"
android:src="@mipmap/icon_camera" />
<ImageView
android:id="@+id/album"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_weight="1"
android:src="@mipmap/icon_album" />
</LinearLayout>
</LinearLayout>

View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="120dp"
android:layout_height="120dp"
android:padding="10dp">
<ImageView
android:id="@+id/image1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:scaleType="centerCrop"
android:src="@mipmap/auth_add_bg" />
<ImageView
android:id="@+id/image11"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:scaleType="centerCrop"
android:src="@mipmap/icon_add" />
</RelativeLayout>

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -69,7 +69,8 @@ public class DialogUitl {
} }
return dialog; return dialog;
} }
public static void showToast(Context context,String content,long delayMillis){
public static void showToast(Context context, String content, long delayMillis) {
Dialog dialog = new Dialog(context, R.style.dialog); Dialog dialog = new Dialog(context, R.style.dialog);
dialog.setContentView(R.layout.dialog_toast); dialog.setContentView(R.layout.dialog_toast);
dialog.setCancelable(false); dialog.setCancelable(false);
@ -82,7 +83,7 @@ public class DialogUitl {
} }
} }
dialog.show(); dialog.show();
new Handler(Looper.getMainLooper()).postDelayed(dialog::dismiss,delayMillis); new Handler(Looper.getMainLooper()).postDelayed(dialog::dismiss, delayMillis);
} }
@ -90,6 +91,10 @@ public class DialogUitl {
return loadingDialog(context, ""); return loadingDialog(context, "");
} }
public static Dialog loadingDialogContent(Context context, String content) {
return loadingDialog(context, content);
}
public static void showSimpleTipDialog(Context context, String content) { public static void showSimpleTipDialog(Context context, String content) {
showSimpleTipDialog(context, null, content); showSimpleTipDialog(context, null, content);
} }
@ -483,8 +488,8 @@ public class DialogUitl {
mClickCallback3.onConfirmClick(dialog); mClickCallback3.onConfirmClick(dialog);
} }
if (mSimpleCallbackView != null) { if (mSimpleCallbackView != null) {
mSimpleCallbackView.onConfirmClick(dialog,titleView, content, btnConfirm, btnCancel); mSimpleCallbackView.onConfirmClick(dialog, titleView, content, btnConfirm, btnCancel);
}else{ } else {
dialog.dismiss(); dialog.dismiss();
} }
@ -501,8 +506,8 @@ public class DialogUitl {
((SimpleCallback2) mClickCallback).onCancelClick(); ((SimpleCallback2) mClickCallback).onCancelClick();
} }
if (mSimpleCallbackView != null) { if (mSimpleCallbackView != null) {
mSimpleCallbackView.onCancel(dialog,titleView, content, btnConfirm, btnCancel); mSimpleCallbackView.onCancel(dialog, titleView, content, btnConfirm, btnCancel);
}else{ } else {
dialog.dismiss(); dialog.dismiss();
} }
} }
@ -510,17 +515,17 @@ public class DialogUitl {
} }
} }
}; };
if(btnConfirm!=null) { if (btnConfirm != null) {
btnConfirm.setOnClickListener(listener); btnConfirm.setOnClickListener(listener);
} }
if(btnCancel!=null) { if (btnCancel != null) {
btnCancel.setOnClickListener(listener); btnCancel.setOnClickListener(listener);
} }
dialog.setOnShowListener(new DialogInterface.OnShowListener() { dialog.setOnShowListener(new DialogInterface.OnShowListener() {
@Override @Override
public void onShow(DialogInterface dialogInterface) { public void onShow(DialogInterface dialogInterface) {
if (mSimpleCallbackView != null) { if (mSimpleCallbackView != null) {
mSimpleCallbackView.onShow(dialog,titleView, content, btnConfirm, btnCancel); mSimpleCallbackView.onShow(dialog, titleView, content, btnConfirm, btnCancel);
} }
} }
}); });

View File

@ -158,7 +158,6 @@ public class ProcessImageUtil extends ProcessResultUtil {
requestPermissions(mAlumbPermissions, mAlumbPermissionCallback); requestPermissions(mAlumbPermissions, mAlumbPermissionCallback);
} }
/** /**
* 开启摄像头执行照相 * 开启摄像头执行照相
*/ */