0

MenuInflateを書き込もうとしています。ユーザーがAboutUsボタンをクリックすると、小さなダイアログボックスが表示され、必要な内容を入力できます。しかし、どういうわけか、「AboutusAboutus」の代わりにMainActivityと書かれています

public boolean onOptionsItemSelected(MenuItem item) {

            switch (item.getItemId()) {
            case R.id.aboutUs:
                Intent i = new Intent("com.android.ABOUT");
                finish();
                startActivity(i);
                break;
            case R.id.preferences:
                break;
            }

            return false;
        }

これは私のabout.xmlファイルです

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

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="About me About Me" >
        </TextView>
    >

    </LinearLayout>

およびAndroidManifest.xmlの関連部分

 <activity
            android:name=".AboutUs"
            android:exported="false"
            android:label="@string/title_activity_main"
            android:theme="@android:style/Theme.Dialog" >
            <intent-filter>
                <action android:name="com.android.ABOUT" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

とスクリーンショット

4

1 に答える 1

1

setContentView(R.layout.my_layout_file)メソッドにが含まれていない場合onCreate()、Androidは何Viewを表示するかを認識しないため、に何も表示されませんActivity。これにより、、、、などをActivityインスタンス化できなくなります。ViewsTextViewsEditTextButtons

http://developer.android.com/reference/android/app/Activity.html#setContentView(android.view.View

于 2013-01-14T19:05:24.077 に答える