嗨我有一個Android應用程序創建這是一個基本的登錄屏幕,我想帶你到一個新的活動屏幕,如果登錄正確。不過,我在重定向時遇到了問題。這裏是我的代碼:登錄後將Android重定向到新活動的Java代碼?
package com.example.loginscreen;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
private EditText username=null;
private EditText password=null;
private TextView attempts;
private Button login;
int counter = 3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
username = (EditText)findViewById(R.id.editText1);
password = (EditText)findViewById(R.id.editText2);
attempts = (TextView)findViewById(R.id.textView5);
attempts.setText(Integer.toString(counter));
login = (Button)findViewById(R.id.button1);
}
public void login(View view){
if(username.getText().toString().equals("mara") &&
password.getText().toString().equals("mara")){
Toast.makeText(getApplicationContext(), "Login Successful!",
Toast.LENGTH_LONG).show();
startActivity(new Intent(MainActivity.this,HomePage.class));
}
else{
Toast.makeText(getApplicationContext(), "Wrong Credentials",
Toast.LENGTH_SHORT).show();
attempts.setBackgroundColor(Color.RED);
counter--;
attempts.setText(Integer.toString(counter));
if(counter==0){
login.setEnabled(false);
}
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
此刻,如果你用錯誤的憑據一切正常,因爲它應該登錄,但如果你正確地登錄應用程序只是退出,並說,它已停止工作。我知道這個問題它與我的startActivity意圖,因爲如果我刪除
startActivity(new Intent(MainActivity.this,HomePage.class));
它至少提出了祝酒通知您正確地已經登錄。謝謝!
下面是主頁的代碼:
package com.example.loginscreen;
import android.widget.ImageView;
public class HomePage extends MainActivity{
ImageView image;
public void addListenerOnButton() {
image = (ImageView) findViewById(R.id.imageView1);
}
}
logcat中的錯誤是什麼? –
你在manifest中註冊了HomePage.java嗎?大多數情況下,這似乎是錯誤。 –
我很驚訝人們不會使用您在活動名稱末尾放置「活動」的約定。 – EpicPandaForce