public class BottomDialogView extends PopupWindow {
private View dialogView;
private EditText payPassEt;
private Button cancelBtn, confirmBtn;
private ImageView backDialogIv;
public BottomDialogView(Activity context, final BottomDialogOnclickListener bottomDialogOnclickListener) {
super(context);
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
dialogView = inflater.inflate(R.layout.dialog, null);
backDialogIv = (ImageView) dialogView.findViewById(R.id.backDialogIv);
payPassEt = (EditText) dialogView.findViewById(R.id.payPassEt);
cancelBtn = (Button) dialogView.findViewById(R.id.cancelBtn);
confirmBtn = (Button) dialogView.findViewById(R.id.confirmBtn);
backDialogIv.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
dismiss();
}
});
cancelBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
dismiss();
}
});
confirmBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
bottomDialogOnclickListener.onPositiveClick(payPassEt.getText().toString().trim(), BottomDialogView.this);
}
});
this.setContentView(dialogView);
this.setWidth(LayoutParams.MATCH_PARENT);
this.setHeight(LayoutParams.MATCH_PARENT);
this.setFocusable(true);
this.setAnimationStyle(R.style.DialogShowStyle); //设置弹出窗体动画效果
ColorDrawable dw = new ColorDrawable(0xb0000000);
this.setBackgroundDrawable(dw);
dialogView.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
int height = dialogView.findViewById(R.id.pop_layout).getTop();
int y = (int) event.getY();
if (event.getAction() == MotionEvent.ACTION_UP) {
if (y < height) { //添加OnTouchListener监听判断获取触屏位置如果在选择框外面则销毁弹出框
// dismiss();
}
}
return true;
}
});
}
}
public class ShowBottomDialogAct extends AppCompatActivity {
private Button showBtn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_show_bottom_dialog);
showBtn = (Button) findViewById(R.id.showBtn);
showBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
showDialog();
}
});
}
private void showDialog() {
DialogUtil.showBottomDialog(ShowBottomDialogAct.this, R.id.activity_show_bottom_dialog, new BottomDialogOnclickListener() {
@Override
public void onPositiveClick(String contentStr, BottomDialogView dialogView) {
dialogView.dismiss();
}
});
}
}
public static void showBottomDialog(Activity activity , int dialogLayoutId , BottomDialogOnclickListener bottomDialogOnclickListener){
BottomDialogView bottomDialogView = new BottomDialogView(activity, bottomDialogOnclickListener);
bottomDialogView.showAtLocation(activity.findViewById(dialogLayoutId), Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL, 0, 0); //设置窗口显示在parent布局的位置并显示
InputMethodManager imm = (InputMethodManager) activity.getSystemService(Context.INPUT_METHOD_SERVICE);//自动打开软键盘
imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有