質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.51%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Q&A

解決済

2回答

2291閲覧

ListViewのアイテムをクリックした際、別の画面に遷移するという実装でアプリが落ちます

Mentol

総合スコア33

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

0グッド

0クリップ

投稿2016/03/31 12:35

編集2016/03/31 13:06

はじめまして、Mentolといいます。

「ListViewのアイテムをクリックした際、別の画面に遷移する」
という事を実装しようとしています。

サンプルサイトを参考にコードを作成したのですが、
デバッグ中にアプリが強制終了してしまします。

デバッグ環境は実機「CP-F03a-KS」で
APIレベルは19です。

コードは下のような感じです。

Java

1import ... 2 3public class FirstActivity extends AppCompatActivity { 4 5 @Override 6 protected void onCreate(Bundle savedInstanceState) { 7 super.onCreate(savedInstanceState); 8 setContentView(R.layout.activity_first); 9 10 11 // Listの中身の作成 12 int item_num = 5; 13 ArrayList<String> items = new ArrayList<String>(); 14 for(int i = 0; i < item_num; i++) { 15 String str = "アイテム" + item_num; 16 items.add(str); 17 } 18 19 // リストの作成 20 ListView item_list = (ListView)findViewById(R.id.itemList); 21 item_list.setAdapter(new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_list_item_1, items)); 22 23 // クリックされた時の処理 24 item_list.setOnItemClickListener(new AdapterView.OnItemClickListener() { 25 @Override 26 public void onItemClick(AdapterView<?> parent, View v, int position, long id) { 27 Intent intent = new Intent(getApplicationContext(), SecondActivity.class); 28 intent.putExtra("item_num", position); 29 startActivity(intent); 30 } 31 }); 32 } 33}

やりたい処理は、
「'item_num'分のリストを表示して
アイテムクリック時に、クリックされたアイテムの情報を渡して画面を遷移する
遷移先で、渡されたデータを扱う」
という事です。

動的に作成したリストをクリックするというのがダメなのかなと思い
「Android ListView 動的 画面遷移」などで
調べても思ったような答えに辿りつけませんでした。

何がダメなのか知りたいです。
よろしくお願いします。

追記:
LogCatです。

Java

103-31 22:01:41.851 24476-24476/com.example.yasuhito.thefirstshopping25 E/AndroidRuntime: FATAL EXCEPTION: main 2 Process: com.example.yasuhito.thefirstshopping25, PID: 24476 3 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.yasuhito.thefirstshopping25/com.example.yasuhito.thefirstshopping25.ShoppingResultActivity}: java.lang.NullPointerException 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195) 5 at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245) 6 at android.app.ActivityThread.access$800(ActivityThread.java:135) 7 at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196) 8 at android.os.Handler.dispatchMessage(Handler.java:102) 9 at android.os.Looper.loop(Looper.java:136) 10 at android.app.ActivityThread.main(ActivityThread.java:5017) 11 at java.lang.reflect.Method.invokeNative(Native Method) 12 at java.lang.reflect.Method.invoke(Method.java:515) 13 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785) 14 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601) 15 at dalvik.system.NativeStart.main(Native Method) 16 Caused by: java.lang.NullPointerException 17 at com.example.yasuhito.thefirstshopping25.MyClass.Place.<init>(Place.java:17) 18 at com.example.yasuhito.thefirstshopping25.MyClass.Masashi.offToShopping(Masashi.java:44) 19 at com.example.yasuhito.thefirstshopping25.ShoppingResultActivity.onCreate(ShoppingResultActivity.java:32) 20 at android.app.Activity.performCreate(Activity.java:5238) 21 at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 22 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159) 23 at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)  24 at android.app.ActivityThread.access$800(ActivityThread.java:135)  25 at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)  26 at android.os.Handler.dispatchMessage(Handler.java:102)  27 at android.os.Looper.loop(Looper.java:136)  28 at android.app.ActivityThread.main(ActivityThread.java:5017)  29 at java.lang.reflect.Method.invokeNative(Native Method)  30 at java.lang.reflect.Method.invoke(Method.java:515)  31 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)  32 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)  33 at dalvik.system.NativeStart.main(Native Method) 

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

swordone

2016/03/31 12:50

何が原因で終了したかは強制終了時のログに手がかりがあります。強制終了時にLogcatに赤い文字でログが出ているはずなので、それを載せてください。
Odacchi

2016/03/31 13:13

実際のクラス名と、LogCatで出てくるクラス名は違いますか? この辺りで、インスタンス生成できていないようですが。 at com.example.yasuhito.thefirstshopping25.MyClass.Place.<init>(Place.java:17) at com.example.yasuhito.thefirstshopping25.MyClass.Masashi.offToShopping(Masashi.java:44) at com.example.yasuhito.thefirstshopping25.ShoppingResultActivity.onCreate(ShoppingResultActivity.java:32)
guest

回答2

0

うわぁ!

遷移先の画面指定を間違えてました!
申し訳ない...

LogCat教えて下さってありがとうございます。

投稿2016/03/31 13:17

Mentol

総合スコア33

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

大抵の場合、null pointer exceptionだと思いますが、デバッグ中、どこのコードで落ちるか分かりますか?

投稿2016/03/31 12:45

Odacchi

総合スコア907

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Mentol

2016/03/31 12:52

Step Overしていくと、startActivity(intent); の後、Looper.javaの真ん中ぐらいの'if (msg == null) { return; }' 辺りをぐるぐる回ってるみたいです...
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.51%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問