gpt4 book ai didi

android - 在 android 中单击按钮打开新类(class)/Activity

转载 作者:行者123 更新时间:2023-11-30 02:34:57 25 4
gpt4 key购买 nike

如何在单击按钮时打开另一个 Activity ?所以现在我的应用程序有一个 main 窗口(当您运行该应用程序时)。然后有一个带有一些按钮的菜单,当我单击某个按钮时,会为此按钮打开另一个 Activity 。所以我有一个表单,用户必须输入他的详细信息,但现在我想单击按钮 continue 并打开另一个 Activity ,他必须在其中输入更多信息。现在,当单击此按钮时,信息将进入数据库。我知道如何在普通页面上添加更多 Activity ,例如 main 我只有按钮,但在这个页面上我真的不知道。这是代码

public class Reservation extends Activity {

String Name;
String Email;
String Phone;
String Comment;
String DateTime;
String numberOfPeople;

private EditText editText1, editText3, editText2, editText4, txtDate, numberOfPeoples; //, txtTime;
private Button btnMenues, btnCalendar, btnTimePicker;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.reservation);

editText1 = (EditText) findViewById(R.id.personName);
editText3 = (EditText) findViewById(R.id.personPhone);
editText2 = (EditText) findViewById(R.id.personEmail);
editText4 = (EditText) findViewById(R.id.personComment);
txtDate = (EditText) findViewById(R.id.datePicker);
numberOfPeoples = (EditText) findViewById(R.id.numberOfPeoples);

btnCalendar = (Button) findViewById(R.id.btnCalendar);
//btnTimePicker = (Button) findViewById(R.id.btnTimePicker);
btnMenues = (Button) findViewById(R.id.continueWithReservation);


btnMenues.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
Intent intent = new Intent(Reservation.this, ReservationSecond.class);
intent.putExtra(Name, Name.getBytes().toString());
intent.putExtra(Email, Email.getBytes().toString());
intent.putExtra(Phone, Phone.getBytes().toString());
intent.putExtra(Comment, Comment.getBytes().toString());
intent.putExtra(DateTime, DateTime.getBytes().toString());
intent.putExtra(numberOfPeople, numberOfPeople.getBytes().toString());
startActivity(intent);
}
});
}

那么我可以在 setOnClickListener 中放入什么来继续下一个 Activity ?

更新:如果我改变这个

public void onClick(View v) {
Name = editText1.getText().toString();
Phone = editText3.getText().toString();
Email = editText2.getText().toString();
Comment = editText4.getText().toString();
DateTime = txtDate.getText().toString();
numberOfPeople = numberOfPeoples.getText().toString();
new SummaryAsyncTask().execute((Void) null);
}

对此

public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, Contacts.class);
startActivity(intent);

}

如何保留到目前为止为下一个 Activity 添加用户的信息,并在他完成第二个 Activity 后保存在数据库中?

最佳答案

您可以使用 Intent,然后使用该 Intent 调用 startActivity():

myBtn.setOnClickListener() {
public void onClick() {
Intent intent = new Intent(this, SecondActivity.class);
startActivity(intent);
}
}

Android Docs给个很好的解释

编辑

要解决您在评论中提出的问题,在 Activities 之间传递信息的最简单方法是使用 extras,例如:

Intent intent = new Intent(this, SecondActivity.class);
intent.putExtra(NAME, VALUE);
startActivity(intent);

multiple versions putExtra 以适应传递不同类型的值

另一种存储信息的方法是使用 SharedPreferences . Here is a simple example

您还可以创建一个名为 public 的类,例如 Storage 并将您的数据表示为 static 成员这个类(像 Storage.MY_DATA 一样访问)所以它可以从你的应用程序中的任何点访问。

关于android - 在 android 中单击按钮打开新类(class)/Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26720735/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com