我在使用意图时遇到了问题。正如你在下面看到的那样,我在登录时有一个意图,如果它是真的,它将带我进入" HomePageActivity"。问题是,它并没有让我进入HomePageActivity"。我非常肯定" HomePageActivity"是正确的。所有活动中的所有按钮都会出现此问题。没有什么可以让我回到我的" HomePageActivity"。当我改变" HomePageActivity"对于其他一些活动,它将进行该活动。但是我想去" HomePageActivity"。有人可以帮我回家吗?
这是我的" SignInActivity"
的代码public class SignInActivity extends ActionBarActivity {
protected EditText mUsernameSignIn;
protected EditText mPasswordSignin;
protected Button mSignInButton;
protected Button mSignUpButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sign_in);
//Initialize
mUsernameSignIn = (EditText) findViewById(R.id.usernameSignIn);
mPasswordSignin = (EditText) findViewById(R.id.passwordSignIn);
mSignInButton = (Button) findViewById(R.id.signinBtnSignIn);
mSignUpButton = (Button) findViewById(R.id.signupBtnSignIn);
//Listen to when the log in mSignIn Button is clicked
//Sign in the user using Parse SDK
mSignInButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//get the user inputs from edit text and covert to string
String username = mUsernameSignIn.getText().toString().trim();
String password = mPasswordSignin.getText().toString().trim();
//Loging In
ParseUser.logInInBackground(username, password, new LogInCallback() {
@Override
public void done(ParseUser parseUser, com.parse.ParseException e) {
if (e == null) {
//Success!
Toast.makeText(SignInActivity.this, "Welcome Back", Toast.LENGTH_LONG).show();
//bring user to HomePageActivity
Intent GoHome = new Intent(SignInActivity.this, HomePageActivity.class);
startActivity(GoHome);
} else {
//Sorry, Sign in Failed!
AlertDialog.Builder builder = new AlertDialog.Builder(SignInActivity.this);
builder.setMessage(e.getMessage());
builder.setTitle("Sorry, Sign In Failed");
builder.setPositiveButton("ok", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int which) {
//close the dialog
dialogInterface.dismiss();
}
});
AlertDialog dialog = builder.create();
dialog.show();
}
}
});
}
});
//Go Sign Up
mSignUpButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent GoSignUp = new Intent(SignInActivity.this, RegisterActivity.class);
startActivity(GoSignUp);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_sign_in, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
这是我和#34; HomePageActivity"
的代码public class HomePageActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home_page);
// Enable Local Datastore.
Parse.enableLocalDatastore(this);
Parse.initialize(this, "EshgpTdW5ialGcLR7ing2x4jhkkgmbHBVeKwLh0J", "av66d87CSHlbRElTPPRx5jLWGefLYwfZ5Y4GHsZ6");
ParseObject testObject = new ParseObject("TestObject");
testObject.put("foo", "bar");
testObject.saveInBackground();
}
//add pet button brings to add pet activity
public void addPetBtn(View v) {
Intent intent = new Intent(HomePageActivity.this, AddPetActivity.class);
startActivity(intent);
}
//register button brings to registration activity
public void registerBtn(View v) {
Intent intent = new Intent(HomePageActivity.this, RegisterActivity.class);
startActivity(intent);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
switch (id) {
case R.id.action_update:
//take user to update activity
break;
case R.id.action_log_out:
// take user to log out activity
ParseUser.logOut();
//take user back to Log in Screen
Intent GoHome = new Intent(HomePageActivity.this,SignInActivity.class);
startActivity(GoHome);
break;
}
return super.onOptionsItemSelected(item);
}
}
这是Android Manifest
<?xml version="1.0" encoding="utf-8"?>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".HomePageActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".AddPetActivity"
android:label="@string/title_activity_add_pet" >
</activity>
<activity
android:name=".RegisterActivity"
android:label="@string/title_activity_register" >
</activity>
<activity
android:name=".SignInActivity"
android:label="@string/title_activity_sign_in" >
</activity>
</application>
答案 0 :(得分:0)
如果要返回主活动,可以调用finish()来关闭当前活动。 seems this may help you
答案 1 :(得分:0)
而不是通过
启动HomePageActivityIntent GoHome = new Intent(SignInActivity.this, HomePageActivity.class);
startActivity(GoHome);
您可以通过以下方式完成当前活动:
finish();
这是因为您的HomePageActivity正在启动其他两个活动,您可以在这些活动中使用finish()方法返回HomePageActivity。
在这里阅读更多内容: Android: Go back to previous activity