0

私は以前にこれを運が良かったので、なぜ今それを台無しにしているのか理解できません。

簡単に言うと、メインアクティビティから2番目のアクティビティを開始します。

私のメインアクティビティ(Test.class):

Intent s = new Intent(Test.this, Settings.class);
this.startActivity(s);

マイ設定アクティビティ(Settings.class):

public class Settings extends Activity {
    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        setContentView(R.layout.settings);
    }
}

settings.xml:

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

    <TextView 
        android:id="@+id/test"
        android:text="Test"
    /> 

</LinearLayout>

そして、AndroidManifest.xmlファイルのアプリケーション部分は次のとおりです。

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <activity
        android:name="com.frank.test.Test"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity
        android:name="com.frank.test.Settings"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>


</application>

これはただクラッシュします。ログエントリも何もありません。インテント/アクティビティの作成と開始をデバッグタグ付きのtry-catchで囲んでもいけません。

私は盲目、または聴覚障害者です、私は知っています。しかし、どこにもエラーがないこれらのクラッシュは本当に嫌いです。

ちなみに、メインのAcitvityのonCreate()メソッド内でインテントを開始しています。

更新:AndroidManifest.xmlクラスに次のように2番目のアクティビティを追加しようとしました:

<activity android:name=".Settings"></activity>
4

4 に答える 4

3

あなたが修正する必要があるいくつかのこと。

まず、レイアウト:

TextView以下のように幅と高さを定義する必要があります。

<TextView 
    android:id="@+id/test"
    android:text="Test"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" /> 

次に、修正する必要がありますAndroidManifest.xml。両方のアクティビティを適切に定義していません。下記参照:

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >

<!-- Test activity -->
    <activity
        android:name="com.frank.test.Test"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

<!-- Settings activity -->
    <activity
        android:name="com.frank.test.Settings"
        android:label="@string/app_name" >
    </activity>
</application>
于 2012-09-11T13:41:04.340 に答える
0

category.LAUNCHERを指定せずに、マニフェストファイルで設定アクティビティを指定する必要があります。次のようになります。

<activity android:name=".Settings"/>

「ログエントリなし」について-アプリのログを調べているようです(アプリのTAGでフィルタリングされています)。ログフィルタリングを無効にすることができ、logcatでこのクラッシュのエラーメッセージとスタックトレースが表示されます。

于 2012-09-11T13:43:07.197 に答える
0

マニフェストを次のように変更します。

<activity
    android:name=".Settings"/>

于 2012-09-11T13:42:43.533 に答える
0

AndroidManifest.xml の 2 つのランチャー アクティビティ 、2つの同じクラス名? ここが間違っている

 <activity
        android:name="com.frank.test.Test"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity
        android:name="com.frank.test.Test"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

その使用が好きで、クラス名を確認してください

  <activity
        android:name="com.frank.test.Test"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

 <activity  android:name=".com.frank.test.Settings"></activity>
于 2012-09-11T13:44:18.990 に答える