0
0

More than 1 year has passed since last update.

androidアプリをつくろう001

Last updated at Posted at 2023-07-12

はじめまして、「おかす」です。
普段はバックエンドのエンジニアとして働いています。
神が突然「アンドロイドアプリを作れるようになりなさい」と言ってきたので
完全に0の状態からある程度さわれるようになるまで頑張ろうと思います。
このqiitaでは学んだことや経過を記録していきます。

目標はアプリを20個作成したのち、ラインのように
メッセージやスタンプを送受信できるようなアプリを作成することです。
アイデアをひねる頭がないため、このアプリ20個は以下を参考にします。
【実践で身につけるiOSアプリ開発】 10日で21個アプリを作った話
https://www.yukisako.xyz/entry/swift-kusoapps-summery

期限は自分に激甘のため、100年以内とします。

ではいきなりですが、環境構築からはじめましょう。

環境はWindows10です。
まずはソースコードを書いたりなんやらできる総合開発環境をインストールします。
なにやら「Android Studio」がよさそうなのでこれを使いましょう。
言語は特にこだわりがないため「java」で開発することにします。

次に実際の開発を想定してバージョン管理もしていきます。
今回は「GitHub」を使用することにしました。
リポジトリを作成→SSH keyの設定→クローン
ということをやりたかったのですが、SSH keyの設定で少しつまづきました。
SSH keyを生成できるソフト「PuTTy」でキーを作成したのですが、
デフォルトで選択されている「SSH-1 key(RSA)」が現在使用できないようで、
なんでクローンできないんだーってなりました。
以下画像の「SSH-2 ECDSA key」にすることで解決しました。
※ParametersもECDSAに変えることを忘れずに。
image.png

なんやかんやでクローンまでできました。

それではある程度準備ができたので「Android Studio」を起動。
UIが「PhpStorm」にそっくりでとっつきやすそうです(仕事でPhpStormを使用)

作業用フォルダを用意し、プロジェクトを作成します。
image.png

1つ目のアプリは
体重を入力すると、アインシュタインの特殊相対性理論からその人の持っているエネルギーを求めて,
原発何基分が一年に作るエネルギー量かを計算するアプリです

実装を分解してみると以下になりますね(だいたい)
・テキストの設置
・テキストの背景、枠組みの色の変更
・テキストボックスの設置
・テキストボックスのヒントを設定
・ボタンの設置
・ボタン押下で処理を実施させる(四則演算+テキスト表示)

実装メモ
・デザインを見ながら直感的に開発をする場合、activity_main.xmlのタブを開き、
 「コード/Split/デザイン」のうちデザインを選択
・パレットからテキストやボタンをプレビューへドラッグすることでオブジェクトを設置することができる
・値や文字サイズなどのプロパティを編集するときは画面右側の対応する項目か、
  右上の「コード/Split/デザイン」のうちのコードから編集できる
・文字列などは直接書き込まず、values/strings.xmlに
 「change」のように定義する。
 使用するときは「@string/設定したname(今回はbutton_text)」のような形で指定する。
 ダブルクォート不要。
・パレットからボタンを設置した際、レイアウトの制約がないと怒られた。
 →設置オブジェクトを右クリして赤丸をセットすることで回避できた。(あってるの?これ
image.png
・テキストカラーの変更:textColor:@color/cian_blue
・テキスト範囲のバックグラウンドの色変更:solid android:color="#ff0000"
・テキスト範囲のバックグラウンド枠組の色変更:stroke android:color="#00ff00" android:width="2dp"

 時は満ち完成!次いってみよ~

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0