有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

javascript如果我想让用户和管理员在登录后显示不同的布局,我该怎么办?

我的移动应用程序有两种帐户类型的用户,分别是管理员和用户。如果我想让用户和管理员在登录后显示不同的布局,我该怎么办?这是我的登录活动。有人能帮我吗?我是初学者。谢谢或者任何人有任何链接,指导初学者做这些也可以张贴在这里。非常感谢大家

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login);
    connectionClass = new ConnectionClass();
    edtuserid = (EditText) findViewById(R.id.edtuserid);
    edtpass = (EditText) findViewById(R.id.edtpass);
    btnlogin = (Button) findViewById(R.id.btnlogin);
    pbbar = (ProgressBar) findViewById(R.id.pbbar);
    pbbar.setVisibility(View.GONE);

    shp = this.getSharedPreferences("UserInfo", MODE_PRIVATE);

    String userid = shp.getString("UserId", "none");

    if (userid.equals("none") || userid.trim().equals("")) {

    } else {

        Intent i = new Intent(LoginActivity.this, MainActivity.class);
        startActivity(i);
        finish();

    }


    btnlogin.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            DoLogin doLogin = new DoLogin();
            doLogin.execute("");
        }
    });

}

public class DoLogin extends AsyncTask<String,String,String>
{
    String z = "";
    Boolean isSuccess = false;
    String userid = edtuserid.getText().toString();
    String password = edtpass.getText().toString();

    @Override
    protected void onPreExecute() {
        pbbar.setVisibility(View.VISIBLE);
    }

    @Override
    protected void onPostExecute(String r) {
        pbbar.setVisibility(View.GONE);
        Toast.makeText(LoginActivity.this,r,Toast.LENGTH_SHORT).show();
        if(isSuccess) {
            Intent i = new Intent(LoginActivity.this, MainActivity.class);
            startActivity(i);
            finish();
        }
    }

    @Override
    protected String doInBackground(String... params) {
        if(userid.trim().equals("")|| password.trim().equals(""))
            z = "Please enter User Id and Password";
        else
        {
            try {
                Connection con = connectionClass.CONN();
                if (con == null) {
                    z = "Error in connection with SQL server";
                } else {
                    String query = "select * from dbo.demo where UserId='" + userid + "' and Password='" + password + "'";
                    Statement stmt = con.createStatement();
                    ResultSet rs = stmt.executeQuery(query);

                    if(rs.next())
                    {

                        z = "Login successfull";
                        isSuccess=true;
                    }
                    else
                    {
                        z = "Invalid Credentials";
                        isSuccess = false;
                    }

                }
            }
            catch (Exception ex)
            {
                isSuccess = false;
                z = "Exceptions";
            }
        }
        return z;
    }
}

共 (1) 个答案

  1. # 1 楼答案

    我曾经做过这样的项目。为了解决这个登录问题,我们在数据库中添加了一个,名为“角色”,其中包含管理员、用户等角色。为管理员和用户创建两个不同的页面。检查登录凭据后,请检查角色,然后相应地重定向