1

我正在使用带有 ADT 的 Eclipse,并且正在遵循本教程:http: //developer.android.com/training/basics/firstapp/starting-activity.html 来制作应用程序。但是我被困在我应该找到一个'sendMessage()方法'并在其中创建一个'intent'的部分......但是我在哪里可以找到这个sendMessage方法?在布局>activity_main.xml 中?在 src>app_name>MainActivity.java 中?

编辑:所以我知道这个方法在哪里,但下一个问题是:我应该把“意图”放在哪里?

4

5 回答 5

1

在 src>app_name>MainActivity.java 中。当然,您需要创建它。

public void sendMessage(View view) {
    Log.w("msg", "user click");

    Intent intent = new Intent(this, DisplayMessageActivity.class);
    startActivity(intent);
}
于 2012-08-22T12:04:58.847 回答
0

方法始终是 java 代码部分的一部分(XML 用于接口设计,Java 用于逻辑)。

因此,为了添加方法,您必须始终修改 Java 代码。

于 2012-08-22T12:07:55.880 回答
0

本质上,您需要将函数名称与 XML 文件中 onClick 上的函数名称相匹配。这个名字是什么并不重要(在教程中他们调用了方法 sendMessage)。然而,重要的是该方法是相关活动的成员,并且具有完全相同的签名(返回类型 void、公共和参数 View),如所示。

由于编译器无法检查这些方法是否存在(或具有正确的签名),因此通常不建议使用这种用法(指 XML 中的函数),并且大多数开发人员更喜欢在运行时将自己的处理程序分配给按钮(在这种情况下,他们类型检查)

于 2012-08-22T12:08:17.147 回答
0

做一件事,在 Eclipse CTRL + H中,然后在文件搜索选项卡中,查找 sendMessage 方法,您会在项目中的任何位置找到它。

于 2012-08-22T12:09:30.547 回答
0

您应该在 MainActivity.java 中创建它,然后创建一个 Intent 来启动一个名为 DisplayMessageActivity 的活动:

/** Called when the user clicks the Send button */
public void sendMessage(View view) {
Intent intent = new Intent(this, DisplayMessageActivity.class);
EditText editText = (EditText) findViewById(R.id.edit_message);
String message = editText.getText().toString();
intent.putExtra(EXTRA_MESSAGE, message);
startActivity(intent);

}

于 2012-08-22T12:15:50.863 回答