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 Register Dialog(mConteext).show();
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。