やりたい事
1)Activityでボタンをタップする
2)タップするとsecondActivityに移動する
3)乱数でコメントと画像を表示する
4)表示された画像をタップすると別の画像に変更する
3)と4)のcase0までは成功しました(gohan1→gohan2への画像変更)。
しかしcase1が表示された時、画像をタップするとSTOPと表示されて止まってしまいます。
findViewById(R.id.myImage);で同じmyImageを使っているのがいけないのでしょうか?
package com.example.word; import android.os.Bundle; import android.view.MotionEvent; import android.view.View; import android.widget.ImageView; import android.widget.TextView; import java.util.Random; import androidx.appcompat.app.AppCompatActivity; public class SecondActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); TextView textView3 = findViewById(R.id.textView3); Random random = new Random(); int powerNumber = random.nextInt(2); String powerWord = ""; switch (powerNumber) { case 0: powerWord = "今日も元気でごはんがおいしい"; ImageView myImage0= findViewById(R.id.myImage); myImage0.setImageResource(R.drawable.gohan1); myImage0.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { myImage0.setImageResource(R.drawable.gohan2); } }); break; case 1: powerWord = "明日も元気でごはんがおいしい"; ImageView myImage1 = findViewById(R.id.myImage); myImage1.setImageResource(R.drawable.okazu1); myImage1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { myImage1.setImageResource(R.drawable.okazu2); } }); break; } textView3.setText(powerWord); }
書いた通りに動くと思いますけど、STOP とはどこに表示されますか?
返答ありがとうございます。STOPの表示は画像をタップした時、画面全体が薄暗くなって小さいポップウインドウみたいなのが出てきます。そこに「unfortunatelyからはじまる文章」が書かれていました。
なるほど、それはクラッシュしてますね。Logcat にスタックトレースが出てると思いますので、ご確認ください。
https://developer.android.com/studio/debug/am-logcat?hl=ja
回答1件
あなたの回答
tips
プレビュー