1

私は ADT で Eclipse を使用しており、このチュートリアルに従っています: http://developer.android.com/training/basics/firstapp/starting-activity.html でアプリを作成します。しかし、「sendMessage () メソッド」を見つけてその中に「インテント」を作成するはずの部分で行き詰まりました... しかし、この 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

EclipseのCTRL+Hで、次に[ファイル検索]タブでsendMessageメソッドを探します。プロジェクト内のどこにでもあります。

于 2012-08-22T12:09:30.547 に答える
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

MainActivity.java でそれを作成し、その後、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 に答える