Googleのチュートリアルを使用してAndroidのプログラミング方法を学び始めましたが、大きな問題がありました。新しいアクティビティを開始するたびに、アプリがクラッシュする
私はクリックすると別の画面(アクティビティ)に切り替える必要がありますが、私がアプリケーションを実行するたびにクラッシュします。
これは、ボタンがクリックされたときに、次の活動を開始すべきコードです:
public void addListenerOnButton() {
Button button = (Button) findViewById(R.id.BeginShoppingButton);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
Intent beginShopping = new Intent(getApplicationContext(), BeginShoppingScreen.class);
startActivity(beginShopping);
}
});
}
リスナーがアクティブであるように、この方法はonCreate()
方法で呼び出されます。
これは、主な活動のためのXMLです:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="eddgroceryapp.cartcourse2.Activities.MainActivity">
<Button
android:text="Begin Shopping"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/BeginShoppingButton"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true" />
<Button
android:text="Browse Stores"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button2"
android:layout_below="@+id/BeginShoppingButton"
android:layout_alignParentStart="true"
android:onClick="findAStore"/>
<Button
android:text="Report Locations"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="48dp"
android:id="@+id/ReportLocationsButton"
android:layout_below="@+id/BeginShoppingButton"
android:layout_alignParentStart="true"
android:onClick="findAStore"/>
</RelativeLayout>
そして、これは他の活動のためのXMLです:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:text="Choose From Saved Lists"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/Choose" />
<Button
android:text="Create A List"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/Create" />
<Button
android:text="Use Someone Else's List"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/button4" />
</LinearLayout>
クラッシュログ:
11-01 13:51:28.166 1345-1345/eddgroceryapp.cartcourse2 E/AndroidRuntime: FATAL EXCEPTION: main
Process: eddgroceryapp.cartcourse2, PID: 1345
android.content.ActivityNotFoundException: Unable to find explicit activity class {eddgroceryapp.cartcourse2/eddgroceryapp.cartcourse2.Activities.BeginShoppingScreen}; have you declared this activity in your AndroidManifest.xml?
at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1855)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1546)
at android.app.Activity.startActivityForResult(Activity.java:4284)
at android.support.v4.app.BaseFragmentActivityJB.startActivityForResult(BaseFragmentActivityJB.java:48)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:75)
at android.app.Activity.startActivityForResult(Activity.java:4231)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:856)
at android.app.Activity.startActivity(Activity.java:4568)
at android.app.Activity.startActivity(Activity.java:4536)
at eddgroceryapp.cartcourse2.Activities.MainActivity$1.onClick(MainActivity.java:58)
at android.view.View.performClick(View.java:5698)
at android.widget.TextView.performClick(TextView.java:10850)
at android.view.View$PerformClick.run(View.java:22523)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:158)
at android.app.ActivityThread.main(ActivityThread.java:7230)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
11-01 13:51:31.951 1345-1345/eddgroceryapp.cartcourse2 I/Process: Sending signal. PID: 1345 SIG: 9
ポストログ:あなたはこのように、ここからあなたの活動の方向のような他の特性をも設定することができます
:
は、マニフェストファイルにコードの下に追加します。 – Abbas
私はそれを投稿しました。フォーマットして申し訳ありません。 – Dakota
エラーを読み取ります。 'BeginShoppingScreen};あなたのAndroidManifest.xmlでこのアクティビティを宣言しましたか? –