我开始使用Android开发人员了。我目前遇到班上的问题。我使用Login.java来分离函数。以下是我的代码:
public class GTSMobile extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
Login lg = new Login();
lg.Chk_Login();
}
}
public class Login extends Activity{
public void Chk_Login() {
Button launch = (Button)findViewById(R.id.login_button);
launch.setOnClickListener( new OnClickListener()
{ @Override
public void onClick(View viewParam)
{
EditText usernameEditText = (EditText) findViewById(R.id.txt_username);
EditText passwordEditText = (EditText) findViewById(R.id.txt_password);
String sUserName = usernameEditText.getText().toString();
String sPassword = passwordEditText.getText().toString();
if(sUserName.length() == 0 || sPassword.length() == 0){
ShowOKAlert();
}else{
setContentView(R.layout.main);
}
}
}); // end of launch.setOnclickListener
}
void ShowOKAlert(){
AlertDialog alertDialog = new AlertDialog.Builder(this).create();
alertDialog.setTitle("Login Fail");
alertDialog.setMessage("Please Enter UserName and Password");
alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
});
alertDialog.setIcon(R.drawable.icon);
alertDialog.show();
}
}
答案 0 :(得分:0)
您无法以这种方式使用“活动”。活动是用户“看到”的东西。想象一下它是手机上的一个屏幕。 总是会向用户显示一个活动&你不能只是在它们之间进行方法调用。
有关活动生命周期的更多信息,请查看此信息: http://developer.android.com/reference/android/app/Activity.html
您将使用以下命令启动新活动: startActivity(..),不使用“new YourActivity(..)”
但是,在您的代码中,我认为您没有理由开始新的活动。只需在第一个Activity中编写一个方法checkLogin(...)。
希望对你有所帮助。
干杯