Android蒙版弹出框效果

来源:互联网 发布:电商美工绩效考核方案 编辑:程序博客网 时间:2024/05/28 15:05
package cn.lxsdb.yyd.app.dialog;import cn.lxsdb.yyd.app.R;import cn.lxsdb.yyd.app.constants.AppIntent;import android.app.Dialog;import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.view.MotionEvent;import android.view.View;import android.view.Window;import android.view.WindowManager.LayoutParams;import android.widget.ImageButton;public class RegisterDialog extends Dialog implementsandroid.view.View.OnClickListener {private ImageButton cancel;private ImageButton experienceNow;Context context;View registerView;public RegisterDialog(Context context) {super(context);this.context = context;}@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);// 这句代码换掉dialog默认背景,否则dialog的边缘发虚透明而且很宽// 总之达不到想要的效果getWindow().setBackgroundDrawableResource(android.R.color.transparent);registerView = View.inflate(this.context, R.layout.layout_register_dialog, null);setContentView(registerView);// 这句话起全屏的作用getWindow().setLayout(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);initView();initListener();}@Overridepublic boolean onTouchEvent(MotionEvent event) {this.dismiss();return super.onTouchEvent(event);}private void initListener() {cancel.setOnClickListener(this);experienceNow.setOnClickListener(this);}private void initView() {cancel = (ImageButton) findViewById(R.id.ib_close);experienceNow = (ImageButton) findViewById(R.id.ib_register_now);}public void onClick(View v) {switch (v.getId()) {case R.id.ib_close:this.dismiss();break;case R.id.ib_register_now:// 注册Intent intent = AppIntent.getRegPhoneActivity(this.context);context.startActivity(intent);this.dismiss();break;}}}

用法如下:

new RegisterDialog(mContext).show();

效果图如下:


0 0