Little Strange Software

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

Androidアプリ開発初心者がkotlinでカラーピッカーを作ってみるよ! その11(色の保存・保存した色の読み込み機能、完成です!)

 どうも!LSSです!

 カラーピッカー作成の続き行きますよ!

 

…それにしても、大したものになるでもないアプリ開発に、もう「その11」まで
行っちゃってるかぁ…。行き当たりばったりだとこんなもんかな^^;

 

 

xmlのデザイン編集画面から始めます

  1. 「activity_main.xml」をクリックします。
  2. 「Layouts」をクリックします。
  3. 「LinearLayout(horizontal)」をマウスドラッグして、
  4. 「LinearLayout(vertical)」と「btR」の間にドロップします(下図参照)。

f:id:little_strange:20191003221052p:plain

 

 

 そして、そのすぐ下にある「btR」をマウスドラッグで、ビミョーに上にずらし、

f:id:little_strange:20191003222320p:plain

↑のように、LinearLayout(horizontal)の配下になるようにドロップします。

 

 そして、また、LinearLayout(horizontal)をクリックで選択します。

 選択された状態で、画面右のAttributesのほうで、

f:id:little_strange:20191003221653p:plain

↑「layout_height」を「wrap_content」に変更します。

 

 

f:id:little_strange:20191003221830p:plain

 また、「gravity」の旗マークをクリックし、「center」にチェックを入れます。
※すると他2つのcenter_~にも勝手にチェックが入ります。

 で、Applyをクリック。

 

 

…次にまた、

  1. 画面左のPaletteから「Buttons」をクリック。
  2. 右に出てくる「Button」をマウスドラッグで、
  3. 下のほうにあるLinearLayout(horizontal)の配下、「btR」の下にドロップします。

f:id:little_strange:20191003222606p:plain

 

 

 この段階で、画面のほうは、

f:id:little_strange:20191003222944p:plain

↑こんな風になっていたらOK!!

 

 

 で、このbutton2が選択された状態で、またも画面右のAttributesを触りますよー。

  1. 「id」を「btSVD」に書き換えます。
  2. 「layout_weight」を「0」に書き換えます。
  3. 「text」を「保存した色」に書き換えます。
  4. 「onClick」に「btSVDclk」と入力します。

f:id:little_strange:20191003223516p:plain

 

 ここまで出来たら、とりあえずxmlのデザイン編集画面のほうはOKです!

 

 

MainActivity.ktの編集に移ります!

f:id:little_strange:20191003224005p:plain

 はい、kotlinのコードのほうを触りますよ!

 さっき追加したボタンのonClickに当たるコードを書いていきます!
 このボタンを押すと、「色を保存」で記録した色を呼び出せる仕組みを作っていこうと思います。

 

 

 どこに入れようかなぁ…。

f:id:little_strange:20191003224242p:plain

 とりあえず、↑このへんにしておきましょうか。 

 

 で、ガシガシと以下のコードを打ち込みます。

 

fun btSVDclk(v:View){
val dbR=sqloh0.readableDatabase
val cursor=dbR.rawQuery("select SV , SVTIME from COLORSV order by SVTIME desc",null)

for (i in 0..15){
if (cursor.moveToNext()){
btcl[i]=cursor.getInt(cursor.getColumnIndex("SV"))
btns[i].setBackgroundColor(255*256*256*256+btcl[i])
}else{
btcl[i]= 0
btns[i].setBackgroundColor(255*256*256*256)
}
}
cursor.close()
}

 ※256が並んでる中、255が混ざっている事に要注意!

 

 画面は、

f:id:little_strange:20191003225916p:plain

こんな感じになりますね。

 

実はこれで完成です。

 コードはfunを一つ追加しただけですが、実はこれでもう、保存した色を呼び出す部分が完成です!!

 早速、エミュレータにビルドしてみましょう!

 

f:id:little_strange:20191003232242p:plain

 こういったカタチになります!

 現時点での使い方としては、

  1. シークバーで色を作ったり、乱数色から好きな色を選んだりします。
  2. 気に入った色があれば「色を保存」ボタンを押します。
  3. 「保存した色」ボタンを押すと、今までに保存した色が最大で16色、下の4×4のマスに 並び、乱数色を選ぶのと同様にクリックで色を呼び出せます。

…というアプリになります^^

 

 では、今回はこのへんで!!

 またよろしくですー!