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

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

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

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

Q&A

0回答

370閲覧

赤いボタンを押しても画面遷移ができません

myokiya

総合スコア8

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

0グッド

0クリップ

投稿2020/03/21 13:25

以下のようにコードを打ち、fabボタンを押しても画面遷移できません。
コードに何か間違いがあるのでしょう?
ご回答よろしくおい願いします。

kotlin

1**(AndroidManifests.xml)** 2 3<?xml version="1.0" encoding="utf-8"?> 4<manifest xmlns:android="http://schemas.android.com/apk/res/android" 5 package="com.example.bloodpressure"> 6 7 <application 8 android:name=".CustomApplication" 9 android:allowBackup="true" 10 android:icon="@mipmap/ic_launcher" 11 android:label="@string/app_name" 12 android:roundIcon="@mipmap/ic_launcher_round" 13 android:supportsRtl="true" 14 android:theme="@style/AppTheme"> 15 <activity android:name=".EditActivity" /> 16 <activity 17 android:name=".MainActivity" 18 android:label="@string/app_name" 19 android:theme="@style/AppTheme.NoActionBar"> 20 <intent-filter> 21 <action android:name="android.intent.action.MAIN" /> 22 23 <category android:name="android.intent.category.LAUNCHER" /> 24 </intent-filter> 25 </activity> 26 </application> 27 28</manifest>

kotlin

1 2**(MainActivity.kt)** 3 4 override fun onCreate(savedInstanceState: Bundle?) { 5 super.onCreate(savedInstanceState) 6 setContentView(R.layout.activity_main) 7 setSupportActionBar(toolbar) 8 realm = Realm.getDefaultInstance() 9 10 fab.setOnClickListener { view -> 11 val intent = Intent(this, EditActivity::class.java) 12 startActivity(intent) 13 } 14 }

kotlin

1**(EditActivity.kt)** 2 3 override fun onCreate(savedInstanceState: Bundle?) { 4 super.onCreate(savedInstanceState) 5 setContentView(R.layout.activity_edit) 6 realm = Realm.getDefaultInstance() 7 8 val bpId = intent.getLongExtra("id", 0L) 9 if (bpId > 0L) { 10 val bloodPress = realm.where<BloodPress>() 11 .equalTo("id", bpId).findFirst() 12 maxEdit.setText(bloodPress?.max.toString()) 13 minEdit.setText(bloodPress?.min.toString()) 14 pulseEdit.setText(bloodPress?.pulse.toString()) 15 deleteBtn.visibility = View.VISIBLE 16 } else { 17 deleteBtn.visibility = View.INVISIBLE 18 } 19 20 saveBtn.setOnClickListener { 21 22 var max: Long = 0 23 var min: Long = 0 24 var pulse: Long = 0 25 26 if (!maxEdit.text.isNullOrEmpty()) { 27 max = maxEdit.text.toString().toLong() 28 } 29 30 if (!minEdit.text.isNullOrEmpty()) { 31 min = minEdit.text.toString().toLong() 32 } 33 if (!pulseEdit.text.isNullOrEmpty()) { 34 pulse = pulseEdit.text.toString().toLong() 35 } 36 37 when (bpId) { 38 0L -> { 39 40 realm.executeTransaction { 41 val maxId = realm.where<BloodPress>().max("id") 42 val nextId = (maxId?.toLong() ?: 0L) + 1L 43 val bloodPress = realm.createObject<BloodPress>(nextId) 44 bloodPress.dateTime = Date() 45 bloodPress.max = max 46 bloodPress.min = min 47 bloodPress.pulse = pulse 48 } 49 } 50 51 else -> { 52 53 realm.executeTransaction { 54 val bloodPress = realm.where<BloodPress>() 55 .equalTo("id", bpId).findFirst() 56 bloodPress?.max = max 57 bloodPress?.min = min 58 bloodPress?.pulse = pulse 59 60 } 61 62 63 } 64 } 65 66 Toast.makeText(applicationContext, "保存しました", Toast.LENGTH_SHORT).show() 67 finish() 68 } 69 70 deleteBtn.setOnClickListener { 71 72 realm.executeTransaction { 73 val bloodPress = realm.where<BloodPress>() 74 .equalTo("id", bpId) 75 ?.findFirst() 76 ?.deleteFromRealm() 77 } 78 Toast.makeText(applicationContext, "削除しました", Toast.LENGTH_SHORT).show() 79 finish() 80 81 } 82 } 83

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

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

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

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

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

nakasho_dev

2020/03/21 14:47

デバッグ実行した際にstartActivity(intent)まで処理が進んでいることを確認してみましたか? また、MainActivity以外でfabというIDを割り当てている画面はありますか?
myokiya

2020/03/26 15:25

fabが二重になっていました… 直したら起動できました! ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問