Little Strange Software

スマホアプリの開発を行う LittleStrangeSoftware のブログです。

Androidアプリ開発初心者がkotlinでカラーピッカーを作ってみるよ! その9

 どうも!LSSです!

 

 いよいよ9月も終わり、明日から10月&消費税増税ですねぇ。

 なかなか秋っぽい実感が湧かず、昼間日差しが厳しかったですが、無理に時事ネタを挟んだところで、今回もカラーピッカーやっていきます!

 

 

SQLite用クラスを作ります!

 ええと、今回はとりあえず「クラス」だけ作ってみたいと思います。本当はクラスを作って試すまでやりたいのですが、時間ががが…。

 

f:id:little_strange:20190930222638p:plain

 で、今まで触ってこなかった、画面左上のあたりをまず触ります。

Android」と書かれた下に「app」とありますが、まずそこの▶をクリックします。
 そして開かれた中から、「java」をまた▶をクリックで開き、

 

f:id:little_strange:20190930222855p:plain

パッケージ名(androidTestとかtestとかついていないもの)の▶を押して開いておいて、パッケージ名をクリックして選択状態にしておきます。

 そしてそこで右クリックします。

 

f:id:little_strange:20190930223400p:plain

 出てきたメニューのうち、「New」ってところにマウスカーソルを移動すると、クリックしなくても更に右にメニューが出てきます。

 そしてその中の「Kotlin File/Class」にマウスカーソルを合わせて左クリックします。

 

f:id:little_strange:20190930223655p:plain

 そうすると、今度はこんなダイアログが出てきます。
 まず下のKindが最初「File」になっていますが、▼から「Class」に変更します。

 次にNameに「SQLoh」と入力します。

 

f:id:little_strange:20190930223853p:plain

 この状態で、「OK」をクリックします。

 

f:id:little_strange:20190930224125p:plain

 すると、まず画面左に「SQLoh」が追加され、activity_main.xmlやkadomaru.xml、MainActivity.ktなどのタブが並んでいたところにも「SQLoh」が追加され、さらにそのSQLohが編集状態になっているところまで、自動的に一気に進みます。

 

クラスの中身を書いていきます

 class SQLoh、と書かれているところにカーソルを合わせ、
(conte

あたりまでキーボードで打ち込むと、

f:id:little_strange:20190930224545p:plain

↑このような候補が出てきます。

 ここでは
context: Context (android.content)
をクリックします。

 

f:id:little_strange:20190930224913p:plain

↑こんな風に補完入力されます。次に){間に、
:SQ
あたりまで打ち込むと、

 

f:id:little_strange:20190930225242p:plain

また、こんな候補が出てきます。

 ここでは「SQLiteOpenHelper」を選択します。

f:id:little_strange:20190930225530p:plain

 すると、こうなります。赤い波線が出てきて気持ち悪いですが、続けてキーボードで

(context,DB_NAME,null,DB_VER)

と入力します。

 結果、

f:id:little_strange:20190930225900p:plain

こんな風に、赤い文字まで出てきて、ちょっと不安になるかもですが^^;、後で勝手に治ると信じて続けていきます。

「{」と「}」の間に数行のコードを書くので、Enterキーでスキマ行をあけておきます。

 

 そしてそこに、「com」あたりまで打つと、

f:id:little_strange:20190930230304p:plain

companion object って候補が出てくるので、選択します。

 さらにその後ろに{を打っておきます。

 

f:id:little_strange:20190930230556p:plain

 

 そしてEnterを数回叩いて、また「{」と「}」の間にスキマ行を設けておきます。

f:id:little_strange:20190930230829p:plain

 こういう感じですね。

 で、そこに以下のように入力します。

private const val DB_NAME="colorpicker.cb"
private const val DB_VER=
1

 

 すると…

f:id:little_strange:20190930231150p:plain

 上のほうのDB_NAMEとDB_VERが赤文字じゃなくなりました!

 

 次に、気になる赤い波線の「class SQLoh」をクリックして、
キーボードのALTキーとEnterキーを同時に押します。

f:id:little_strange:20190930231619p:plain

 すると、こんなメニューが出てくるので、「Implement members」をクリックします。

 

f:id:little_strange:20190930231837p:plain

 

↑こんなダイアログが出てきます。
選択状態になっていない、onUpgradeの方を、
キーボードのCTRLキーを押しながらクリックします。

 

f:id:little_strange:20190930232043p:plain

↑どちらも選択された状態になったところで、OKボタンをクリックします。

 

f:id:little_strange:20190930232502p:plain

 

  override fun ~が2つ、出現します!

 それぞれ、中にTODO~って行が入っていますが、このTODOの行はどちらも消しておきます。 

 

f:id:little_strange:20190930232756p:plain

↑TODOを消した後の画面ですが、赤い〇で囲ったところに手を加えます。

  • 2つある「p0」をどちらも「db」に書き換えます。
  • 2つある「SQLiteDatabase?」の「?」だけを削ります。
  • 「p1」を「oldver」に書き換えます。
  • 「p2」を「newver」に書き換えます。

 

↓結果、こんな風になります。

f:id:little_strange:20190930233308p:plain

 

 

onCreate内でテーブルを作成するコードを書いていきます!

 クラス作成も大詰め、テーブルの作成に入ります。

 書くのはonCreateの「{」と「}」の間になるので、またEnterキーでスキマ行を開けてから、

 

db.execSQL("CREATE TABLE COLORRC (_id INTEGER PRIMARY KEY AUTOINCREMENT , RC INTEGER , RCTIME INTEGER)")
db.execSQL("CREATE TABLE COLORSV (_id INTEGER PRIMARY KEY AUTOINCREMENT , SV INTEGER , SVTIME INTEGER)")

 

と2行、入力します。
 画面のほうは、

f:id:little_strange:20190930233953p:plain

↑こんな感じになっています。

 

  これで…SQLiteOpenHelperを継承した「SQLoh」クラスの作成は完了です!!

 自分はAndroidStudioのエディタの補完機能にちょっとづつ慣れてきたかも? って気がしてきました^^

 

 ではまた!次回もよろしくお願いします!