重置Android活动中的所有字段

时间:2016-05-25 09:26:54

标签: android android-layout

我是android新手,我的应用程序中有一个要求。一个应用程序有两个活动(Activity1,Activity2)。在某些条件下(用户选择),Activity2将从Activity1启动。当我们按下Activity2中的后退按钮时。它正在导航到Activity1,但之前的用户选择保持不变。我想在回到Activity1时清除用户选择,我该如何实现?

4 个答案:

答案 0 :(得分:1)

从activity1调用带有Intent的activity2 添加以下代码

Intent intent = new Intent(activity1.this,activity2.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
finish();

并将此代码添加到activity2覆盖方法 d

@Override
public void onBackPressed() {
    // TODO Auto-generated method stub
    super.onBackPressed();
    Intent intent = new Intent(activity2.this,activity1.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(intent);
    finish();
}

答案 1 :(得分:0)

多个选项

1。您可以在activity1开始时将activity2中的值设置为默认值。

2。如果activity2中的noHistory=true设置为manifest,那么您可以在{activity1处开始新的activity2 1}}。

@Override
public void onBackPressed() {
    startActivity(new Intent(this, activity1.class));
}

3。您也可以使用onActivityResult中的选项,前提是activity2startActivityForResult

答案 2 :(得分:0)

您可以在class StudentClass { public function getAllStudent() { $host = "localhost"; $database = "mms_db"; $username = "root"; $password = ""; $dns = "mysql:host=$host; dbname=$database"; $connect = new PDO($dns, $username, $password); $connect->query("set names utf8"); $connect->query("set charset utf8"); $sql = "select * from students"; $result = $connect->prepare($sql); $result->execute(); $starraye = $result->fetchAll(); return $starraye; } } 之后为<?php include ("StudentClass.php"); $student_object = new StudentClass(); $student_object->getAllStudent(); foreach ($starraye as $rows) { echo $rows['fname']; } 致电finish()。在此之后,在activity1中实施startActivity(intent)并使用onBackPressed启动activity2

答案 3 :(得分:0)

在转到Activity2之前清除该部分