Android:如何使用即时贴视图而非按钮

时间:2018-11-11 11:27:09

标签: java android

我有一个对话框,该对话框当前在单击按钮时打开,并且工作正常,但这意味着我有一个外观不好看的丑陋按钮,我希望从CardView中打开它。

这是卡片视图:

CardView manager=findViewById(R.id.manager_card);
manager.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {}
});

这是当前通过单击按钮打开的对话框:

Button btnLoginDialog;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_sign_in);

    // Init Widget Button and set click listener
    btnLoginDialog = (Button) findViewById(R.id.btnLoginDialog);
    btnLoginDialog.setOnClickListener(this);
}

@Override
public void onClick(View v) {
    if (v == btnLoginDialog) {

        // Create Object of Dialog class
        final Dialog login = new Dialog(this);
        // Set GUI of login screen
        login.setContentView(R.layout.login_gui);
        login.setTitle("Login to Pulse 7");

        // Init button of login GUI
        Button btnLogin = (Button) login.findViewById(R.id.btnLogin);
        Button btnCancel = (Button) login.findViewById(R.id.btnCancel);
        final EditText txtUsername = (EditText)login.findViewById(R.id.txtUsername);
        final EditText txtPassword = (EditText)login.findViewById(R.id.txtPassword);

        // Attached listener for login GUI button
        btnLogin.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                if(txtUsername.getText().toString().trim().equals("admin")  && txtPassword.getText().toString().trim().equals("admin"))
                {
                    // Validate Your login credential here than display message
                    Toast.makeText(SignInActivity.this,
                            "Login Sucessfull", Toast.LENGTH_LONG).show();

                    // Redirect to dashboard / home screen.
                    login.dismiss();
                    Intent intent = new Intent(getApplicationContext(), ManagerMenu.class);
                    startActivity(intent);
                }
                else
                {
                    Toast.makeText(SignInActivity.this,
                            "Please enter valid Username and Password", Toast.LENGTH_LONG).show();

                }
            }
        });
        btnCancel.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                login.dismiss();
            }
        });

        // Make dialog box visible.
        login.show();
    }
}

我不知道这一点。我希望那里有足够的信息供某人帮助我。

1 个答案:

答案 0 :(得分:0)

使用此类型,将为您提供帮助:-

CardView manager=findViewById(R.id.manager_card);
    manager.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {


                final Dialog login = new Dialog(this);
                // Set GUI of login screen
                login.setContentView(R.layout.login_gui);
                login.setTitle("Login to Pulse 7");

                // Init button of login GUI
                Button btnLogin = (Button) login.findViewById(R.id.btnLogin);
                Button btnCancel = (Button) login.findViewById(R.id.btnCancel);
                final EditText txtUsername = (EditText)login.findViewById(R.id.txtUsername);
                final EditText txtPassword = (EditText)login.findViewById(R.id.txtPassword);



                     // Attached listener for login GUI button
            btnLogin.setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(View v) {
                    if(txtUsername.getText().toString().trim().equals("admin")  && txtPassword.getText().toString().trim().equals("admin"))
                    {
                        // Validate Your login credential here than display message
                        Toast.makeText(SignInActivity.this,
                                "Login Sucessfull", Toast.LENGTH_LONG).show();

                        // Redirect to dashboard / home screen.
                        login.dismiss();
                        Intent intent = new Intent(getApplicationContext(), ManagerMenu.class);
                        startActivity(intent);
                    }
                    else
                    {
                        Toast.makeText(SignInActivity.this,
                                "Please enter valid Username and Password", Toast.LENGTH_LONG).show();

                    }
                }
            });
            btnCancel.setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(View v) {
                    login.dismiss();
                }
            });

            // Make dialog box visible.
            login.show();


        }
    });