1

だから私はアンドロイドをいじり始めたばかりで、何ができるかを見ようとしています。私は最初のアンドロイドチュートリアルに従っていました: http://developer.android.com/training/basics/firstapp/index.htmlそして最後に、プログラムで TextView を定義します。これを新しいレイアウトで定義するように変更したかったので、これを書きました(display_message.xmlという名前です):

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <TextView android:id="@+id/text_view"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />


</LinearLayout>

そして、DisplayMessage クラスでは、これを次のように変更しました。

public class DisplayMessage extends Activity {

        @Override
        public void onCreate(Bundle savedInstanceState)
        {
            super.onCreate(savedInstanceState);
        setContentView(R.layout.display_message);

        // Get message from intent
        Intent intent = getIntent();
        String message = intent.getStringExtra(FirstActivity.EXTRA_MESSAGE);

        // Get the text view
        TextView textView = (TextView) findViewById(R.id.text_view);
        textView.setText(message);
    }

}

しかし、Eclipse は、それが何でR.layout.display_messageあるかわからないと言いR.id.text_viewます。それらを定義する必要がある場所は他にありますか?どこで台無しにしましたか?

4

1 に答える 1

2

正しいように見えますが、インポートされた R クラスが正しいものであることを確認してください。Eclipse は android.R をインポートすることがありますが、インポートする必要がある R ファイルは your.package.name.R です。

于 2012-05-03T17:14:52.957 に答える