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

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

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

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

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

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

解決済

【Kotlin】Unresolved referenceが解決できず

kenta0228
kenta0228

総合スコア20

Android

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

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

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

1回答

-1評価

1クリップ

17460閲覧

投稿2019/05/10 22:55

前提・実現したいこと

はじめてのAndroidプログラミング 第4版
Chapter11:My Alarm Clockで下記エラー解決できず困っています。

発生している問題・エラーメッセージ

com/example/kenta/myalarmclock/MainActivity.kt Unresolved reference: OnDateSelectedListener 'onSelected' overrides nothing Unresolved reference: format 'onPositiveClick' overrides nothing Unresolved reference: requestDimissKeyguard Unresolved reference: FLAG_TURN_SCREEN_ON Unresolved reference: FLAG_SHOW_WHEN_LOCKED Unresolved reference: FLAG_TURN_SCREEN_ON Unresolved reference: FLAG_SHOW_WHEN_LOCKED Unresolved reference: FLAG_DISMISS_KEYGUARD > Task :app:buildInfoGeneratorDebug

該当のソースコード

Kotlin

package com.example.kenta.myalarmclock import android.app.AlarmManager import android.app.KeyguardManager import android.app.PendingIntent import android.content.Context import android.content.Intent import android.icu.text.SimpleDateFormat import android.os.Build import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.provider.ContactsContract import android.widget.Toast import kotlinx.android.synthetic.main.activity_main.* import java.lang.IllegalArgumentException import java.text.DateFormat import java.text.ParseException import java.util.* import java.util.regex.Pattern class MainActivity : AppCompatActivity(), TimeAlertDialog.Listener , DatePickerFragment.OnDateSelectedListener , TimePickerFragment.OnTimeSelectedListener { override fun getUp() { finish() } override fun onSelected(year: Int, month: Int, date: Int) { val c = Calendar.getInstance() c.set(year, month, date) dateText.text = DateFormat.format("yyyy/MM/dd", c) } override fun onSelected(hourOfDay: Int, minute: Int) { timeText.text = "%1$02d:%2$02d".format(hourOfDay, minute) } override fun onPositiveClick() { finish() } override fun snooze() { val calendar = Calendar.getInstance() calendar.timeInMillis = System.currentTimeMillis() calendar.add(Calendar.MINUTE, 5) setAlarmManager(calendar) finish() } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) if (intent?.getBooleanExtra("onReceive", false) == true) { when { Build.VERSION.SDK_INT >= Build.VERSION_CODES.O_MR1 -> { setShowWhenLocked(true) setTurnScreenOn(true) val keyguardManager = getSystemService(KEYGUARD_SERVICE) as KeyguardManager keyguardManager.requestDimissKeyguard(this, null) } Build.VERSION.SDK_INT >= Build.VERSION_CODES.O -> { window.addFlags( FLAG_TURN_SCREEN_ON or FLAG_SHOW_WHEN_LOCKED ) val keyguardManager = getSystemService(KEYGUARD_SERVICE) as KeyguardManager keyguardManager.requestDismissKeyguard(this, null) } else -> window.addFlags( FLAG_TURN_SCREEN_ON or FLAG_SHOW_WHEN_LOCKED or FLAG_DISMISS_KEYGUARD ) } val dialog = TimeAlertDialog() dialog.show(supportFragmentManager, "alert_dialog") } setContentView(R.layout.activity_main) setAlarm.setOnClickListener { val date = "${dateText.text} ${timeText.text}".toDate() when { date != null -> { val calendar = Calendar.getInstance() calendar.time = date setAlarmManager(calendar) Toast.makeText( this, "アラームをセットしました", Toast.LENGTH_SHORT ).show() } else -> { Toast.makeText( this, "日付の形式が正しくありません", Toast.LENGTH_SHORT ).show() } } cancelAlarm.setOnClickListener { cancelAlarmManager() } dateText.setOnClickListener { val dialog = DatePickerFragment() dialog.show(supportFragmentManager, "date_dialog") } timeText.setOnClickListener { val dialog = TimePickerFragment() dialog.show(supportFragmentManager, "time_dialog") } } } private fun setAlarmManager(calendar: Calendar) { val am = getSystemService(Context.ALARM_SERVICE) as AlarmManager val intent = Intent(this, AlarmBroadcastReceiver::class.java) val pending = PendingIntent.getBroadcast(this, 0, intent, 0) when { Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP -> { val info = AlarmManager.AlarmClockInfo( calendar.timeInMillis, null ) am.setAlarmClock(info, pending) } Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT -> { am.setExact( AlarmManager.RTC_WAKEUP, calendar.timeInMillis, pending ) } else -> { am.set( AlarmManager.RTC_WAKEUP, calendar.timeInMillis, pending ) } } } private fun cancelAlarmManager() { val am = getSystemService(Context.ALARM_SERVICE) as AlarmManager val intent = Intent(this, AlarmBroadcastReceiver::class.java) val pending = PendingIntent.getBroadcast(this, 0, intent, 0) am.cancel(pending) } private fun String.toDate(pattern: String = "yyyy/MM/dd"): Date? { return try { SimpleDateFormat(pattern).parse(this) } catch (e: IllegalArgumentException) { return null } catch (e: ParseException) { return null } } }

試したこと

ネットで複数Unresolved referenceの解決方法について調べましたが解決できずでした。
初心者のため、深く理解できていない可能性は高いです。

補足情報(FW/ツールのバージョンなど)

Mac(macOS Mojave:10.14.4)
AndroidStudio3.4を利用しております。
他に必要な情報などあればお教えいただければ調べて記載いたします。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

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

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

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

Android

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

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

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