当前位置:主页 > 移动开发 > Android代码 >

Android实现蒙版弹出框效果

时间:2021-02-06 10:05:53 | 栏目:Android代码 | 点击:

本文实例为大家分享了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();

您可能感兴趣的文章:

相关文章