こんにちは。
前回は、R.javaクラスのエラーが発生しました。
今回はここを解決したいと思います。
まずは、エラー詳細を見てみましょう。
右側見てみると、’android:labelfor’ not found.とありますね。
・・・そうです。
↓ android:labelforとは前回のときに警告を消すために追加したコードです。
間違えた追加をしてしまいましたかね・・・💧
もう一度よく調べてみましたが、今回テキストとして追加した
EditTextというのは、TextViewの派生で、いろいろと入力文字を
制限できるようなんですよね。
今回は入力はしませんが、時間を表示するために時間表記で制限
できるかなと思って使っています。
で、警告文を改めてgoogle翻訳してみたところ、android:labelforを使用するのは
SDKのバージョンが最低でも1.7であれば影響するようです。
使用しているSDKはバージョン25なので、影響は少ないのかなぁ・・・、
もう一つの解決策にあたるandroid:hintを使用してみます。
android:hintとは、文字制限に関するヒントを出力してくれるようで、
入力する場合に文字が空白であれば、「数字のみ」とか「5文字以内」
とか文字入力のヒントを出してくれる機能とのことです😀
と、言うわけで以下8行目にandroid:labelforを削除し、android:hintを足します。
<EditText
android:id=”@+id/editText”
style=”@style/Widget.AppCompat.AutoCompleteTextView”
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:ems=”10″
android:inputType=”time”
android:hint=”@string/_0″
android:text=”@string/_0″
セットする文字は、出力文字と同じ”@string/_0″にしています。
ここで、メニューバーから、ビルド > Clean Projectを選んで、クリーンしましょう✌
クリーンとは、プロジェクト全体を再整理してくれる機能です。
これにより修正後のjavaエラーが消えてくれます。
逆に問題が潜んでいてエラーが出力される場合もあります💦
適度なとこまでコードを書いたら、クリーンしてみるといいですね。
・・・クリーンが終わると、、、
はい!
エラー消えましたね🙂
合わせて、警告も消えました😀
これでエラー・警告共に解決し、一安心です😅
丁寧に書き進めれば避けられたエラーでしたね。
勉強になってよかったです。
次回は、このまま時間カウントアップの処理を作成していきます。
今回はここまで🤚
では、また次回。