package com.hdl.photovoltaic.widget;
|
|
import android.app.Dialog;
|
import android.content.Context;
|
import android.os.Bundle;
|
import android.text.TextUtils;
|
import android.view.View;
|
|
import androidx.annotation.NonNull;
|
|
import com.hdl.photovoltaic.R;
|
import com.hdl.photovoltaic.base.BaseDialog;
|
import com.hdl.photovoltaic.databinding.DialogChangeAvatarBinding;
|
|
/**
|
* 修改头像专用弹窗
|
*/
|
public class ChangeAvatarDialog extends BaseDialog {
|
|
private final Context mContext;
|
|
private onCancelOnclickListener cancelOnclickListener;//取消按钮被点击了的监听器
|
private onLine1OnclickListener line1OnclickListener;//
|
private onLine2OnclickListener line2OnclickListener;//
|
private DialogChangeAvatarBinding viewBinding;
|
|
private String line1Text, line2Text, cancelText;
|
|
public ChangeAvatarDialog(@NonNull Context context) {
|
super(context, R.style.Custom_Dialog);
|
this.mContext = context;
|
}
|
|
@Override
|
protected void onCreate(Bundle savedInstanceState) {
|
super.onCreate(savedInstanceState);
|
viewBinding = DialogChangeAvatarBinding.inflate(getLayoutInflater());
|
setContentView(viewBinding.getRoot());
|
//空白处不能取消动画
|
setCanceledOnTouchOutside(false);
|
//初始化界面控件
|
initView();
|
//初始化界面数据
|
initData();
|
//初始化界面控件的事件
|
initEvent();
|
|
}
|
|
private void initView() {
|
}
|
|
/**
|
* 自定义"第一行"文本
|
*
|
* @param content 内容
|
*/
|
public void setLine1Text(String content) {
|
if (TextUtils.isEmpty(content)) {
|
return;
|
}
|
line1Text = content;
|
|
|
if (viewBinding != null) {
|
viewBinding.dialogChangePhotographTv.setText(content);
|
}
|
|
|
}
|
|
/**
|
* 自定义"第二行"文本
|
*
|
* @param content 内容
|
*/
|
public void setLine2Text(String content) {
|
if (TextUtils.isEmpty(content)) {
|
return;
|
}
|
line2Text = content;
|
|
|
if (viewBinding != null) {
|
viewBinding.dialogChangeAvatarSelectAlbumTv.setText(content);
|
}
|
|
|
}
|
|
|
/**
|
* 自定义"取消"文本
|
*
|
* @param cancel 内容
|
*/
|
public void setCancel(String cancel) {
|
if (TextUtils.isEmpty(cancel)) {
|
return;
|
}
|
cancelText = cancel;
|
if (viewBinding != null) {
|
viewBinding.dialogChangeAvatarCancelTv.setText(cancel);
|
}
|
|
}
|
|
private void initEvent() {
|
|
|
viewBinding.dialogChangePhotograph.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (line1OnclickListener != null) {
|
line1OnclickListener.Line1();
|
}
|
}
|
});
|
viewBinding.dialogChangeAvatarSelectAlbumLl.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (line2OnclickListener != null) {
|
line2OnclickListener.Line2();
|
}
|
}
|
});
|
|
viewBinding.dialogChangeAvatarCancelLl.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
if (cancelOnclickListener != null) {
|
cancelOnclickListener.Cancel();
|
}
|
}
|
});
|
|
}
|
|
private void initData() {
|
//如果设置按钮文字
|
if (!TextUtils.isEmpty(line1Text)) {
|
viewBinding.dialogChangePhotographTv.setText(line1Text);
|
}
|
if (!TextUtils.isEmpty(line2Text)) {
|
viewBinding.dialogChangeAvatarSelectAlbumTv.setText(line2Text);
|
}
|
if (!TextUtils.isEmpty(cancelText)) {
|
viewBinding.dialogChangeAvatarCancelTv.setText(cancelText);
|
}
|
}
|
|
|
/**
|
* 设置取消按钮监听
|
*
|
* @param onCancelOnclickListener -
|
*/
|
public void setCancelOnclickListener(onCancelOnclickListener onCancelOnclickListener) {
|
if (onCancelOnclickListener != null) {
|
this.cancelOnclickListener = onCancelOnclickListener;
|
}
|
}
|
|
|
/**
|
* 设置按钮1监听
|
*
|
* @param onLine1OnclickListener -
|
*/
|
public void setLine1OnclickListener(onLine1OnclickListener onLine1OnclickListener) {
|
if (onLine1OnclickListener != null) {
|
this.line1OnclickListener = onLine1OnclickListener;
|
}
|
}
|
|
/**
|
* 设置按钮2监听
|
*
|
* @param onLine2OnclickListener -
|
*/
|
public void setLine2OnclickListener(onLine2OnclickListener onLine2OnclickListener) {
|
if (onLine2OnclickListener != null) {
|
this.line2OnclickListener = onLine2OnclickListener;
|
}
|
}
|
|
public interface onCancelOnclickListener {
|
void Cancel();
|
|
}
|
|
public interface onLine1OnclickListener {
|
void Line1();
|
}
|
|
public interface onLine2OnclickListener {
|
void Line2();
|
}
|
}
|