1

そのため、Android アプリケーションを作成するための初心者向けガイド ( http://developer.android.com/training/basics/firstapp/index.html ) を調べてきました。エラーが発生し続ける1つのステップを除いて、正常に機能しました。

MainActivity.java が機能しません。3 つの異なる場所であらゆる種類のエラーが発生しています。

これは私のコードがどのように見えるかです:

package com.fredde.myfirstapp;


public class MainActivity extends Activity {
    public final static String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE";

    import android.app.Activity;enter code here
    import android.content.Intent;
    import android.view.View;
    import android.widget.EditText;
    import android.view.View;



    /** 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);
    }

したがって、このガイドを読んだことがある人、またはこの特定のプロジェクトを行っていないにもかかわらず何が問題なのかを理解できる人が助けてくれることを願っています. 前もって感謝します!

私は完全な初心者です。

4

5 に答える 5

1

import ステートメントはクラス外にする必要があります。

package com.fredde.myfirstapp;

import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.widget.EditText;
import android.view.View;

public class MainActivity extends Activity {
    public final static String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE";

/** 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);
}
于 2013-10-19T21:43:03.343 に答える
0

以下をコンパイルしたところ、エラーは発生しませんでした。これは、onCreateメソッドの下で私がしたことです..

setCustomView(R.layout.file.xml);

このために、res->layout->file.xml の下に file.xml というファイルを作成します。xml の編集ビューに :` のような ID を割り当てました。

 <EditText 
    android:id="@+id/edit_mssg"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/msg"/>

DisplayMesageActivity.java という Java ファイルがあるはずです。

 package com.fredde.myfirstapp;

import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.widget.EditText;
import android.view.View;

public class MainActivity extends Activity {

public final static String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE";
@override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setCustomView(R.layout.file.xml);
}
/** 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_mssg);
String message = editText.getText().toString();
intent.putExtra(EXTRA_MESSAGE, message);
startActivity(intent);
}
于 2013-10-19T23:03:54.883 に答える
0

あなたの主な活動のために:

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);

以下は、res->values-> の下の strings.xml で定義する必要があります。

<resources>
...
<string name="title_activity_display_message">My Message</string>
</resources>

for R を解決できません: 次のように、xml ファイルで編集ビューの ID として edit_message を定義していることを確認してください。

<EditText android:id="@+id/edit_message"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:hint="@string/edit_message" />

これで問題が解決するはずです

于 2013-10-19T23:53:26.873 に答える
0

レイアウトをそのアクティビティに拡張するには、onCreate と内部の setCustomView を呼び出す必要があります。

@override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setCustomView(R.layout.yourLayoutXMLfile);
}

これを書かないと、アプリは EditText などのオブジェクトを見つける場所を知りません。

于 2013-10-19T22:27:19.753 に答える