前提・実現したいこと
Android Studio 3.6で、kotlinを使いAndroidアプリを作っています。
質問の趣旨はこの方→(https://teratail.com/questions/83514)と同じなのですが、回答を見ても解決に至らなかったので、質問させていただきます。
Logcatの読み方、どこに誤りがあるのかを教えていただきたいです。
発生している問題・エラーメッセージ
--------- beginning of crash 2020-04-19 09:13:17.256 3310-3310/com.test.testrecyclerview E/AndroidRuntime: FATAL EXCEPTION: main Process: com.test.testrecyclerview, PID: 3310 java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.test.testrecyclerview/com.test.testrecyclerview.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "com.test.testrecyclerview.MainActivity" on path: DexPathList[[zip file "/data/app/com.test.testrecyclerview-0DJM3cV9xBWLyrnmiLg7XA==/base.apk"],nativeLibraryDirectories=[/data/app/com.test.testrecyclerview-0DJM3cV9xBWLyrnmiLg7XA==/lib/x86, /system/lib]] at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2843) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3048) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6669) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.test.testrecyclerview.MainActivity" on path: DexPathList[[zip file "/data/app/com.test.testrecyclerview-0DJM3cV9xBWLyrnmiLg7XA==/base.apk"],nativeLibraryDirectories=[/data/app/com.test.testrecyclerview-0DJM3cV9xBWLyrnmiLg7XA==/lib/x86, /system/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) at android.app.AppComponentFactory.instantiateActivity(AppComponentFactory.java:69) at androidx.core.app.CoreComponentFactory.instantiateActivity(CoreComponentFactory.java:45) at android.app.Instrumentation.newActivity(Instrumentation.java:1215) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2831) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3048) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6669) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 2020-04-19 09:13:17.304 3310-3310/com.test.testrecyclerview I/Process: Sending signal. PID: 3310 SIG: 9
該当のソースコード
Kotlin
1import android.os.Bundle 2import android.view.View 3import android.widget.Toast 4import androidx.appcompat.app.AppCompatActivity 5import androidx.recyclerview.widget.LinearLayoutManager 6import com.test.testrecyclerview.R 7import kotlinx.android.synthetic.main.activity_main.* 8 9class MainActivity : AppCompatActivity(){ 10 11 override fun onCreate(savedInstanceState: Bundle?) { 12 super.onCreate(savedInstanceState) 13 setContentView(R.layout.activity_main) 14 15 /// 表示するテキスト配列を作る [テキスト1, テキスト2, ....] 16 val list = Array<String>(10) {"テキスト$it"} 17 val adapter = CustomAdapter(list) 18 val layoutManager = LinearLayoutManager(this ) 19 20 // アダプターとレイアウトマネージャーをセット 21 simpleRecyclerView.layoutManager = layoutManager 22 simpleRecyclerView.adapter = adapter 23 simpleRecyclerView.setHasFixedSize(true) 24 25 // インターフェースの実装 26 adapter.setOnItemClickListener(object:CustomAdapter.OnItemClickListener{ 27 override fun onItemClickListener(view: View, position: Int, clickedText: String) { 28 Toast.makeText(applicationContext, "${clickedText}がタップされました", Toast.LENGTH_LONG).show() 29 } 30 }) 31 } 32}
試したこと
コード中に赤い字が無いかの確認、PCの再起動を試しました。
補足情報
PCはwindows 10 HOME、Android StudioはAndroid Studio 3.6です。
ソースコードはこの記事→(https://qiita.com/YS-BETA/items/f54bed772d502c5c06f0#%E3%82%A2%E3%83%80%E3%83%97%E3%82%BF%E3%83%BC%E3%82%92%E3%81%A4%E3%81%8F%E3%82%8B)
を参考にしています。
回答2件
あなたの回答
tips
プレビュー