プロジェクト

全般

プロフィール

活動

2020/08/24から2020/09/22まで

2020/09/21

高徹 11:48 機能 #166: Androidアプリケーション(検温記録)を古典MVC構造で作成する(Kotlin編)
アプリを実行するとすぐに落ちてしまう。 高橋 徹
高徹 11:19 機能 #166: Androidアプリケーション(検温記録)を古典MVC構造で作成する(Kotlin編)
MainActivity.kt にコンテントプロバイダアクセスを追記 高橋 徹
高徹 09:22 機能 #166: Androidアプリケーション(検温記録)を古典MVC構造で作成する(Kotlin編)
h4. コンテントプロバイダの作成(続)
h5. ContentProviderのサブクラス作成
コンテントプロバイダとして次の2種類のリクエストに対応する。
# すべての検温記録を取得
# 指定したIDの検温記録1件を取得
利用者は、次のコンテントURIでリクエストを指定する。
# "content://com.torutk.temprecorder.kt.provider/temperatures"
# "content://com...
高橋 徹

2020/09/20

高徹 10:51 機能 #166: Androidアプリケーション(検温記録)を古典MVC構造で作成する(Kotlin編)
h4. コンテントプロバイダの作成
* コンテントプロバイダの利用者とのインタフェースを決める
* コントラクトクラスの作成
* SQLiteOpenHelperのサブクラス作成
* ContentProviderのサブクラス作成
h5. 利用者とのインタフェースを決める
コンテントプロバイダの利用者は、次を指定する必要があるので、それらを決める。
* コンテントのURI
* データの構造(メタデータ)
Cursorから値を取り出すため...
高橋 徹

2020/09/19

高徹 08:29 機能 #166: Androidアプリケーション(検温記録)を古典MVC構造で作成する(Kotlin編)
RecyclerViewの実装については、次のWikiページに記載
[[Androidプログラミング-RecyclerView]]
高橋 徹

2020/09/15

高徹 22:01 機能 #166: Androidアプリケーション(検温記録)を古典MVC構造で作成する(Kotlin編)
h4. コントローラのロジック
h5. 検温日時の保持と表示
* 画面が表示されたときに、現在日時を検温日時として表示する
* 10分前/10分後ボタンを押すと、検温日時を変更する
日時(java.time.LocalDateTime)をフィールドに持ち、ボタンをクリックするとフィールドに保持した日時を±10分増減する。
日時を表示のために文字列化するには、java.time.format.DateTimeFormatterを用いる。
高橋 徹
高徹 15:02 機能 #166: Androidアプリケーション(検温記録)を古典MVC構造で作成する(Kotlin編)
h4. 画面に表示する文字のリソース化
レイアウトで使用する文字列は、国際化リソースとして定義する。
app/src/main/res/values/strings.xml に、IDと文字列の組み合わせで定義する。このファイルには英語文字列を定義する。
次に、日本語文字列を定義する。まず、Android Studio 上でstrings.xmlを開いた状態で、[Open editer]をクリックし、
{{thumbnail(clipboard-20200915075...
高橋 徹

2020/09/14

高徹 08:23 機能 #166: Androidアプリケーション(検温記録)を古典MVC構造で作成する(Kotlin編)
レイアウトの確認をするため、実行(Android Device上で実行)したところ次のエラーに。
> Installation did not succeed.
> ...
アプリケーションのIDが、Java編とかぶっているため、アプリケーションIDは次に定義
* appモジュールのbuild.gradle
高橋 徹
高徹 07:41 機能 #166: Androidアプリケーション(検温記録)を古典MVC構造で作成する(Kotlin編)
h3. 画面レイアウトの作成
先のJava編[#165]では、ルートレイアウトをデフォルトのConstraintLayoutからLinearLayoutに変更し、入れ子構造で「古典的な」レイアウトを実施した。その後、入れ子構造のレイアウトは画面描画が重くなるのでフラット構造のレイアウトができるConstraintLayoutがよいという意見を見かけた。成程...、では今回はデフォルトのConstraintLayoutをルートレイアウトとして作成してみる。
h5. 入...
高橋 徹

2020/09/13

高徹 11:06 機能 #166 (進行中): Androidアプリケーション(検温記録)を古典MVC構造で作成する(Kotlin編)
h3. プロジェクトの新規作成
Android Studioで新規プロジェクト「TempRecorderClassicKt」を作成
* [File]メニュー > [New] > [New Project] で「Create New Project」画面を開く
* [Empty Activity]を選択し、[Next]ボタンをクリック
* 以下を記載し[Finish]ボタンをクリック
** Name欄に @TempRecorderClassicKt@
...
高橋 徹

2020/09/12

高徹 22:51 機能 #166 (解決): Androidアプリケーション(検温記録)を古典MVC構造で作成する(Kotlin編)
[#165]の仕様で、Kotlin言語で実装する。
開発環境は次
|_. OS | Windows 10 1909 Pro 64bit 日本語版 |
|_. IDE| Android Studio 4.0.1 |
結果
リポジトリ
source:learn/android/TempRecorderClassicKt

ファイル毎のコード行数(clocツール調べ)
|_. No.|_. ファイル名 |_. コード行数 |_. Jav...
高橋 徹

2020/09/07

高徹 02:13 機能 #165: Androidアプリケーション(検温記録)を古典MVC構造で作成する
RecyclerViewの実装が結構大変そうである。
レイアウトファイル、関連クラスの実装が必要
* レイアウトXML
1行のViewのレイアウトを定義
* RecycleView.Adapterの派生クラス
1件のデータを1行のViewに設定
* RecycleView.ViewHolderの派生クラス
1行のView(ウィジェット)参照を保持
h5. activity_main.xmlにRecyclerViewを追加
Android Studio 4.0.1の...
高橋 徹

2020/08/31

高徹 22:57 機能 #165: Androidアプリケーション(検温記録)を古典MVC構造で作成する
日時と体温のデータベースを管理するContentProviderを作成する。
ContentProviderは、CONTENT URIを定義する(content://<authority>/<path>/<id>)
authorityは、コンテンツプロバイダのFQCNを全て小文字とした名前とする慣習(com.torutk.temprecorder.tempcontentprovider)
pathはテーブル名
作成するクラスは大よそ次のとおり
BaseColumns...
高橋 徹
高徹 17:36 機能 #165 (進行中): Androidアプリケーション(検温記録)を古典MVC構造で作成する
Android Studio で新規プロジェクトを作成、空のActivityとする。
* TempRecordeJavaプロジェクトを新規作成
* MainActivityのデフォルトのレイアウトはConstraintLayoutとなっている
レイアウトに関して
ConstraintLayoutは、Java/SwingのSpringLayout に類似して、上下左右の間隔を定義して配置する方式で、柔軟性が高い。
しかし、設定が複雑になるため、LinearLayou...
高橋 徹
高徹 15:37 機能 #165 (フィードバック): Androidアプリケーション(検温記録)を古典MVC構造で作成する
h4. 目的
毎日の体温計測をスマートフォンのメモ機能で記録していたが、記入が結構面倒であった。
また、昨今のAndroidアプリケーション開発事情を把握するため、5年前の古典的なMVC構造と対比したい。そこで、まずMVC構造で作成してみる。
h4. 条件
* アプリケーション名は、「Temp.Recorder」
* 単独のアプリケーションでデータ永続化機能を持つ
* 開発言語はJava、完成後Kotlin版作成
* ActivityとCont...
高橋 徹
高徹 15:26 サポート #114 (終了): はてなブログの編集領域を等幅フォントにしたい
実現方法が見出せなかったのでお蔵入り(終了) 高橋 徹
 

他の形式にエクスポート: Atom