本文实例为大家分享了Android蒙版弹出框效果的具体代码,供大家参考,具体内容如下
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 implements android.view.View.OnClickListener { private ImageButton cancel; private ImageButton experienceNow; Context context; View registerView; public RegisterDialog(Context context) { super(context); this.context = context; } @Override protected 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(); } @Override public 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();