• 17 AlertDialog的应用


    AlertDialog的用途

    1.弹出警告窗体,提示重要信息,提示用户再次确认操作

    2.可设置确认、取消按钮等事件

     

     

    package com.example.logon;
    
    import androidx.appcompat.app.AlertDialog;
    import androidx.appcompat.app.AppCompatActivity;
    
    import android.content.Context;
    import android.content.DialogInterface;
    import android.os.Bundle;
    import android.view.Gravity;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.ImageView;
    import android.widget.LinearLayout;
    import android.widget.PopupWindow;
    import android.widget.RadioButton;
    import android.widget.TextView;
    import android.widget.Toast;
    
    public class MainActivity extends AppCompatActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            Button btnLogon = (Button)findViewById(R.id.btnLogon);
            btnLogon.setOnClickListener(new View.OnClickListener(){
                @Override
                public void onClick(View v) {
                    RadioButton rbtnLogonByUserName = (RadioButton)findViewById(R.id.rbtnLogonByUserName);
                    //RadioButton rbtnLogonByEmail = (RadioButton)findViewById(R.id.rbtnLogonByEmail);
                    String DbUser,DbPassword;
                    if(rbtnLogonByUserName.isChecked()){
                        DbUser = "zhangsan";
                        DbPassword = "123456";
                    }
                    else{
                        DbUser = "zhangsan@sample.com";
                        DbPassword = "123456";
                    }
                    EditText txtUserName = (EditText)findViewById(R.id.txtUserName);
                    EditText txtPassword = (EditText)findViewById(R.id.txtPasword);
                    TextView txtResult = (TextView)findViewById(R.id.txtResult);
                    if (txtUserName.getText().toString().equals(DbUser)){
                        if(txtPassword.getText().toString().equals(DbPassword)){
                            //txtResult.setText("登录成功");
                            //Toast toast = Toast.makeText(MainActivity.this, "登录成功", Toast.LENGTH_LONG);
                            //toast.setGravity(Gravity.CENTER,0,0);
                            //LinearLayout layout = (LinearLayout)toast.getView();
                            //ImageView img = new ImageView(getApplicationContext());
                            //img.setImageResource(R.drawable.googleplay);
                            //layout.addView(img,0);
                            //toast.show();
                            ToastShow("登录成功");
                        }else{
                            //密码错误
                            //txtResult.setText("密码错误");
                            //Toast toast = Toast.makeText(MainActivity.this, "密码错误", Toast.LENGTH_LONG);
                            //toast.setGravity(Gravity.CENTER,0,0);
                            //toast.show();
                            ToastShow("密码错误");
                        }
                    }
                    else{
                        //用户名不存在
                        //txtResult.setText("用户名不存在");
                        //Toast toast = Toast.makeText(MainActivity.this, "用户名不存在", Toast.LENGTH_LONG);
                        //toast.setGravity(Gravity.CENTER,0,0);
                        //toast.show();
                        ToastShow("用户名不存在");
                    }
                }
            });
            final Button btnReg = (Button)findViewById(R.id.btnReg);
            btnReg.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    //View contentView = LayoutInflater.from(MainActivity.this).inflate(R.layout.popup_content,null,false);
                    //PopupWindow window = new PopupWindow(contentView,LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT,true);
                    //window.setTouchable(true);
                    //window.showAsDropDown(btnReg,0,0,Gravity.BOTTOM);
                    //在注册按钮下展开
                    //window.showAtLocation(getWindow().getDecorView(),Gravity.BOTTOM,0,0);
                    //在窗口底部展开
    
                    //点击注册时优先弹出用户使用协议
                    AlertDialog alert = new AlertDialog.Builder(MainActivity.this).create();
                    alert.setTitle("用户协议确认");
                    alert.setIcon(R.drawable.googleplay);
                    alert.setMessage("注册新用户需接受用户协议的约束,请您认真查阅用户协议内容,并选择是否同意接受用户协议。");
                    alert.setButton(AlertDialog.BUTTON_POSITIVE, "确认", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            View contentView = LayoutInflater.from(MainActivity.this).inflate(R.layout.popup_content,null,false);
                            PopupWindow window = new PopupWindow(contentView,LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT,true);
                            window.setTouchable(true);
                            window.showAsDropDown(btnReg,0,0,Gravity.BOTTOM);
                            //在注册按钮下展开
                            //window.showAtLocation(getWindow().getDecorView(),Gravity.BOTTOM,0,0);
                            //在窗口底部展开
                        }
                    });
                    alert.setButton(AlertDialog.BUTTON_NEGATIVE, "不同意", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            ToastShow("只有接受用户协议,才能注册新用户。");
                        }
                    });
                    alert.show();
                }
            });
        }
        void ToastShow(String Content){
            Toast toast = Toast.makeText(MainActivity.this, Content, Toast.LENGTH_LONG);
            View view = LayoutInflater.from(MainActivity.this).inflate(R.layout.tosat_templates, null);
            TextView txtToastContent = (TextView) view.findViewById(R.id.txtToastContent);
            txtToastContent.setText(Content);
            toast.setView(view);
            toast.setGravity(Gravity.CENTER,0,0);
            //LinearLayout layout = (LinearLayout)toast.getView();
            //ImageView img = new ImageView(getApplicationContext());
            //img.setImageResource(R.drawable.googleplay);
            //layout.addView(img,0);
            toast.show();
        }
    }
  • 相关阅读:
    实验三
    第六七章读后感
    0415评论
    0414-复利计算
    实验8 201306114104彭得源
    实验7 201306114104彭得源
    实验6 201306114104彭得源
    android实验五201306114104彭得源
    android实验四201306114104彭得源
    实验五 04彭得源
  • 原文地址:https://www.cnblogs.com/wangdayang/p/14459863.html
Copyright © 2020-2023  润新知