商城等项目中常见支付功能,多接入微信支付包以及余额支付,写了一个支付方式选择dialog
效果图:
效果图
判断了支付金额以及余额的金额,当支付金额大于余额时,余额支付方式置灰且无法点击
支付金额大于余额
该控件采用链式调用:
new PayDialog(MainActivity.this).setData(20, 15)//输入支付金额,余额
.setListener(new PayDialog.OnPayClickListener() {
@Override
public void onPayClick(int payType) {
switch (payType) {
case PayDialog.ALI_PAY:
Toast.makeText(MainActivity.this, "支付宝", Toast.LENGTH_LONG).show();
break;
case PayDialog.WX_PAY:
Toast.makeText(MainActivity.this, "微信", Toast.LENGTH_LONG).show();
break;
case PayDialog.BALANCE_PAY:
Toast.makeText(MainActivity.this, "余额", Toast.LENGTH_LONG).show();
break;
}
}
}).show();
并且该控件支持,无余额支付的支付选择
无余额支付方式
无余额支付方式时
new PayDialog(MainActivity.this).setData(20, 15)//输入支付金额,余额可随便填写
.haveBalance(false)//设置false不现实余额支付,不设置默认有余额支付方式
.setListener(new PayDialog.OnPayClickListener() {
@Override
public void onPayClick(int payType) {
switch (payType) {
case PayDialog.ALI_PAY:
Toast.makeText(MainActivity.this, "支付宝", Toast.LENGTH_LONG).show();
break;
case PayDialog.WX_PAY:
Toast.makeText(MainActivity.this, "微信", Toast.LENGTH_LONG).show();
break;
case PayDialog.BALANCE_PAY:
Toast.makeText(MainActivity.this, "余额", Toast.LENGTH_LONG).show();
break;
}
}
}).show();
此控件代码已上传GitHub
网友评论