2

我是一个尝试学习 Java/Android 编程的新手。

我在 Eclipse 中为 Android 做一个应用程序并创建了一些按钮。我有一个后退和一个取消按钮。

例子:

我有一个 EditText,你可以用你的名字写。如果你写上你的名字并按下后退按钮,那么你会回到上一个 Activity,但如果你去同一个 Activity,那么你仍然会看到你在 EditText 中写的名字。

但是如果你按下cancel按钮,你会回到之前的Activity,但是当你回来的时候,你的名字会是空的。我将“杀死”或“停止”活动。

这是我用于后退按钮的代码,你会为取消按钮使用什么?谢谢你。

public void onClick(View v) {
    switch(v.getId()){
    case R.id.buttonBack:
        Intent intent = new Intent (AllActivity.this, MenuActivity.class);
        startActivity(intent);
        break;
4

3 回答 3

2

对于取消按钮,您可以使用以下方法,这将终止活动。

 finish()

所以在你的代码中它看起来像这样:

 public void onClick(View v) {
     switch(v.getId()){
     case R.id.cancel:
         finish();
         break;
于 2013-03-25T10:12:49.973 回答
1

您可能感兴趣的另一种方法是自己清除 EditText 的内容。您需要在 xml 文件中为 EditText 定义一个 id,以便您可以通过编程方式访问它。

<EditText

布局的东西在这里:

    android:layout_width="fill_parent"

...然后是 id 属性

    android:id="@+id/edit_text_id"
    >

然后在您的代码中,您将在您的类中添加以下内容(而不是在任何方法中):

EditText anEditText;

然后在你的 onCreate() 中,在布局膨胀之后(如果它提前出现,它将导致应用程序崩溃):

anEditText = (EditText) findViewById(R.id.edit_text_id);

名称 edit_text_id 并不重要,但它是我们在布局文件中使用的名称

接下来在 onClick 方法中添加取消(在 case 语句之后):

//this wipes the text from the textbox
anEditText.setText("");
// add the rest of the back button code after this and your good!

祝你好运!请记住,我们曾经都是新手。如果你想成为一名优秀的 android 程序员,我建议你先获得扎实的 Java 背景。这本免费的书对我帮助很大!

Java 笔记

于 2013-03-26T03:31:28.167 回答
1

根据流程或应用流程的要求,这几乎没有什么区别。对于取消和返回工作是相同的,例如,如果您打开任何对话框并提供取消按钮将关闭/关闭您的对话框,就像返回按钮执行此操作一样。在使用 Activity 实现时,如果您为关闭当前活动而实现,则只需调用 finish() 方法即可完成这两个选项。由于后退按钮通常用于完成您当前的活动并返回。

于 2013-03-25T10:18:07.770 回答