リストから選択した数値をプログラム内で活用する方法(Android)
使い手がリストから選んだ数値を使うにはNumberPickerというウィジェットがおすすめらしいです。視覚的にかっこよくて直感的に使いやすいから実際これが一番いいと思います。
ウィジェットとはTextViewのような画面を構成する部品です。
使用方法はレイアウトとソース内で登録することが必要となります。
レイアウトとはアプリの画面の設計の時に使うものでここでそれぞれのウィジェットの幅や高さ、位置などを設定する。Webプログラミングで言うところのCSSと同じようなものです。
書き方は他のウィジェットと同じように
みたいに書きます。他のウィジェットのTextViewのように名前を書いてからそれぞれの設定を書き込みそれらをカッコで囲むイメージです。
上の例だとNumberPickerというウィジェットの設定を行っています。
以上でレイアウトの説明は終了です。
次からはjavaプログラム内(ソース内)の説明をします。
選択された数値を使うには結論から言うとgetValue()を書けば終わりです笑
NumberPickerを使うには他のウィジェットと同じようにフィールドで宣言を行い、選択するリストの最大値と最小値を設定します。
ここまでをコードで示すと
NumberPicker num1;
num1.setMaxValue(10)
num1.setMinValue(0)
というように設定します。これで0~10までの数値を選択できるようになりました。
最後にgetValue()で数値を取るのですが、注意することとして
そもそも選択してもらわないと使用できません笑
なので選択された状態で使わなければなりません。そこでお馴染みのOnClick()です
選択された状態でボタンを押してもらって使用できる形にします。
ここでは匿名クラスを使ってやっていきます。
Button button1=(Button)findViewById(R.id.button1);
button1.setOnClickListener(new Viwe.OnClickListener(){
public vid onClick(View v){
//実行したいコード
}
});
この実行したいコードの中に先ほどのgetValue()を使うことで完成です。
実際のコードをぽんっと貼って解説してくれてるブログはたくさんありましたが、そもそも基礎的な書き方とかがまだおぼつかない人にもわかりやすいように書きました。(自分のことです笑)
Android Studioにライブラリを入れる方法
作ろうとしているアプリのタスク整理して気づいたのですが、まだデータベースよりも図を表示させるほうが重要であることに気がつきました笑
後々SQLiteも必要になるのですが優先順位が低いのでまずは優先順位が高いものから考えていきたいと思います。アプリが動く順番通りにタスクを整理してしまったために優先順位を考えられていなかったことが原因です汗
ですので今回からはグラフなどの図を表示する方法を攻めていきます!ちゃんとあとでSQLiteも書きます笑
私は初心者なのでライブラリの導入方法もメモさせていただきます。
.jarファイルをlibsにいれることでインポートする
これはライブラリを使うときに必要なことです。
今回はこの
https://code.google.com/archive/p/afreechart/
afreechartを使用していきます。このDownloadsから
afreechart-0.0.4.jarをダウンロードして
libsに入れます。(libsはAndroid Studioではファイルの構成の左上の方にあるAndroidの部分をProjectに直すと出てくる)
そしてlibsの中にドラッグする。
最後にlibsの中にいれた.jarファイルで右クリックして
Add as Libraryをクリックしてappを選択して完了!
こんな基礎でもメモしとかないとすぐに忘れるんです…
これから頑張ります!!笑
SQLite(1)
今回からアプリを一つ完成させたいと思います。株価のデータをカギ足に変えて見やすくするためのアプリを作りたいと思います。
理想は10円ごと、20円ごとのように使いたい人が自分で幅を決めれるようになるとよいと思っています。
カギ足とは株価の増減が激しいかどうかみやすくするためのもの(かなり適当な説明なので気になる人は調べてみてください笑)
Androidの作成にあたり、データベースを必要になりました。
そのため、探してみたところSQLiteなるものが簡単に使用可能なようなので調べてみました。
SQLiteとは
・Android端末などに入ってる組み込み型のデータベース
・サーバを介する必要がないのでサーバーの知識がなくても使いやすい
上に書いてように使いやすいのが特徴でその端末自体にデータベースを作るような形なので大量のデータを保存するのにはむいていない。
そのため、簡単なアプリを作る際には役立つけど、大きなデータを扱うようなアプリには不向きになってしまう。
私の作りたいアプリでは数値を一時的に保存しておきたいくらいの気持ちなのでこれを使用します。
次回から実際にAndroid上でSQLiteを利用する方法を書いていきます!