1

別のアクティビティが開始するボタンをクリックしてアクティビティを作成しようとしていますが、Android AVD でアプリを実行すると、「残念ながらアプリが停止しました」というエラーが表示されます。

package com.example.myapp;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.content.Intent;

public class MainActivity extends Activity implements View.OnClickListener {

    Button btn;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btn=(Button)findViewById(R.id.button1);
        btn.setOnClickListener(this);
    }

    public void onClick(View view){
        startActivity(new Intent("com.example.myapp.SecondActivity.java"));
    }
}

2 番目のアクティビティには次のコードがあります。

package com.example.myapp;

import android.app.Activity;
import android.os.Bundle;

public class SecondActivity extends Activity {

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

LogCat

FATAL EXCEPTION: main >android.content.ActivityNotFoundException: 
    No Activity found to handle Intent
    { act=com.example.simpleapp.SecondActivity.java } 
android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1622) 
android.app.Instrumentation.execStartActivity(Instrumentation.java:1417) 
android.app.Activity.startActivityForResult(Activity.java:3370) 
com.example.simpleapp.MainActivity.onClick(MainActivity.java:22) 
android.view.View.performClick(View.java:4204) 
android.view.View$PerformClick.run(View.java:17355)

私はいくつかの声明が欠けているかもしれないと思う.....アドバイスしてください

4

3 に答える 3

1

インテントを試してください インテント = 新しいインテント(this, SecondActivity.class); startActivity(意図);

また、AndroidManifest でアクティビティを宣言したかどうかも確認してください。

于 2013-06-11T08:00:59.323 に答える
0

ドキュメントから:

public Intent (Context packageContext, Class<?> cls)

特定のコンポーネントのインテントを作成します。他のすべてのフィールド (アクション、データ、タイプ、クラス) は null ですが、後で明示的な呼び出しで変更できます。これにより、システムに依存して適切なクラスを見つけるのではなく、ハードコーディングされたクラス名を実行することを目的としたインテントを作成する便利な方法が提供されます。この影響の詳細については、setComponent(ComponentName) を参照してください。

Parameters

packageContext
A Context of the application package implementing this class.

cls
The component class that is to be used for the intent.

コード :

public void onClick(View view){
             startActivity(new Intent(MainActivity.this, SecondActivity.class));
              }
于 2013-06-12T06:10:09.143 に答える
0

AndroidManifest.xml を変更しましたか? ここにログを書いてください。マニフェスト ファイルにアクティビティを追加する必要があります。

于 2013-06-11T07:57:45.723 に答える