スマホアプリを実際に開発しながら具体的な方法や困ったことなどを投稿していきます。これからスマホのアプリ開発を始める方の手助けになればと思います。現在は、Android向けに「マインスイーパー」をリリースするために開発中です。
【マインスイーパー開発 #18】最初に開くタイルを地雷以外にする|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、ゲームを開始してから最初に開くタイルを地雷以外にしてみます。
【マインスイーパー開発 #17】ゲームクリアを判定する|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、ゲームクリアを判定します。
【マインスイーパー開発 #16】難易度を表す3BVを計算する|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、難易度を表す3BVを計算します。3BVとは、全てのタイルを開くのに必要な最小タップ数のことです。
【マインスイーパー開発 #15】数字をタップしたときに開く範囲を強調表示する|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、#14で実装した旗数が正しい数字をタップしたら周りのタイルを再起的に開く処理の対象タイルを強調表示します。
【マインスイーパー開発 #14】旗数が正しい数字をタップしたら周りのタイルを再起的に開く|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、数字タイルの周りに正しい数だけ旗を立っている場合に、その数字タイルをタップすると旗以外の周りのタイルを再起的に開く処理を実装します。
【マインスイーパー開発 #13】周りの地雷数が0個の場合にタイルを再起的に開く|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、開いたタイルの周りの地雷数が0個の場合にタイルを再起的に開く処理を実装します。
【マインスイーパー開発 #12】タップ時の動作を切り替える(タイルを開く、旗を立てる)|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、タイルをタップした時に「タイルを開く」または「旗を立てる」という動作を切り替えるモード切替ボタンを追加します。
【マインスイーパー開発 #11】画面の向きを縦固定にする|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、Android端末を横に傾けたときに自動回転せず画面の向きを縦固定にします。
【マインスイーパー開発 #10】ゲームオーバーをバイブレーションで知らせる|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、地雷を開いた時にバイブレータを作動させてゲームオーバーを分かりやすく知らせる工夫をします。
【マインスイーパー開発 #9】残りの地雷数を表示する|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、「全ての地雷数 ー 旗を立てた数」を残りの地雷数として表示します。
【マインスイーパー開発 #8】リセットボタンを実装する|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、ゲームのリセットボタンを実装します。リセットボタンは、実行するとゲームをリセットする機能以外に「通常状態」、「ゲームオーバー」、「ゲームクリア」の状態を表す機能を持たせます。
【マインスイーパー開発 #7】ゲームのプレイ時間(経過時間)をChronometerで表示する|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、Android SDKのChronometerを使ってゲームのプレイ時間を表示します。
【マインスイーパー開発 #6】ImageViewをアニメーションでボタンっぽくする|Android & Kotlinアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。ImageViewにアニメーションを使ってボタンっぽいエフェクトをつけてみます。
【マインスイーパー開発 #5】プレイ時間などのパーツをタイルに重ねて配置する|Androidアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、「プレイ時間」、「リセットボタン」、「残りの爆弾数」、「旗モード切替ボタン」の4パーツをタイルの上に重ねて配置します。
【マインスイーパー開発 #4】長押し(ロングタップ)で旗を立てる|Androidアプリ開発
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、開いていない通常のタイルを長押し(ロングタップ)すると旗を立てて、旗のタイルを長押しすると通常のタイルに戻す処理を実装します。
【マインスイーパー開発】タイルを開いて地雷、数字を表示する(その3)
Android & Kotlinの環境でマインスイーパーをアプリ開発する方法を説明します。今回は、タッチしたタイルに地雷が配置されていたなら地雷を表示し、地雷以外なら周りの地雷数をあらわす数字を表示します。
【マインスイーパー開発】タッチしたタイルの場所を判定する(その2)
Android & Kotlinの環境でマインスイーパーをアプリ開発する方法を説明します。今回は、前回の記事で配置した9x9のタイルに対して、タッチしたタイルの場所が縦、横何番目なのかを判定します。
Android & Kotlinの環境でマインスイーパーを開発する方法を説明します。今回は、単純に9x9のタイルを画面に描画してみます。
【Android & Kotlin】デバッグビルドのみログ出力するログクラスを作ってみた
Google Playストアでアプリを公開してからLogcatにデバッグログが出力されたままになっていることに気がつくと恥ずかしいです。 そのため、リリースビルドではログ出力せずデバッグビルドのみログ出力するログクラスを作成します。
【Android & Kotlin】画像の一部分だけ横回転するフリップアニメーションを実装してみた
Canvasに描画した画像の一部分だけをクルッと横回転するフリップアニメーションを実装する方法を説明します。実装例として画面いっぱいに並べて描画したマインスイーパーのタイル(マス)をタッチした部分のみ横回転のフリップアニメーションで開いています。
【Android & Kotlin】タッチのフィードバックを自前の画像がフェードアウトするアニメーションで実装してみた
画面をタッチしたときのフィードバックに、自分で用意した画像をフェードアウトするアニメーションで実装する方法を説明します。
【Android & Kotlin】スクロールを予想させる終端の影にフェードイン・アウトのアニメーションをつけてみた
スクロールを予想させる影を250ミリ秒かけてフェードイン・アウトするアニメーションを使って表示、非表示を切り替える方法を説明します。
【Android & Kotlin】View(ビュー)から他のView(ビュー)に直接アクセスする方法
他のView(ビュー)の状態をちょっと知りたいなどのケースで他のビューに直接アクセスしたいことがあります。そんなときの方法を説明します。
【Android & Kotlin】Factory Methodを使って実現方法が異なる目的が同じ機能をスマートに実装してみた
実現方法が異なる目的が同じ機能を実装するときに、無計画に実装するとソースコードのあちこちでif文を使って分岐するスパゲッティコードになってしまいます。このようなケースは、デザインパターンのFactory Methodを使うとスマートに実装が可能です。
【Android & Kotlin】2次元配列で確保したデータクラスをインデックス(添字)でアクセスしてみた
Kotlinでの実装例として、マインスイーパーのタイル状態を表すデータクラス(TileElement)を8 x 16の2次元配列(mTiles)に確保して、爆弾をランダムにセットするコードを記載します。
個人でアプリ開発するときに困るのがアイコンなどの画像をどのように用意するかです。無料の画像編集ソフトであるGIMPを使ってマインスイーパーの画像を作成したので参考として公開します。
【Android&Kotlin】拡大縮小と縦横(上下左右)と斜めの慣性スクロールに対応したカスタムイメージビューを作ってみた
Android&Kotlinで動作するカスタムイメージビューを作ってみました。機能は、1. 拡大縮小、2. 縦横斜めのスクロール、3. 端っこで跳ね返る慣性スクロール、4. 端っこで引っ張って離すと戻っていく。
【アプリ開発】スマホのアプリ開発を始めるときに検討するべきこと
スマホのアプリ開発をやってみようと決意してみたのはよいが、何から手をつければよいか分からないという人向けに、そそたたがスマホのアプリを開発しようと思い立って実際に検討したことを説明します。
【OpenCV】スカウターっぽい表示をするプログラムを作ってみた
Python+OpenCV+OpenGLを使ってドラゴンボールのスカウターっぽい表示をするプログラムを作ってみました。カメラ映像をスカウター表示っぽく緑色にして、顔バレ防止用に顔領域をモザイク処理と戦闘力(乱数)と対象を示す三角形マークをリアルタイムで表示します。
【OpenCV】虫の侵入経路を監視するプログラムを作ってみた
Python+OpenCV+OpenGLを使って虫が室内に侵入する経路を監視(検知)して証拠をつかむためのプログラムを作ってみました。実際に侵入した証拠を押さえることができませんでしたが小さいアリを検知することには成功しています。
【OpenCV, OpenGL】フレーム差分による背景除去法で定点カメラの異物検知(動体検知)を判定するプログラムを作ってみた
いつの間にか部屋にいる大嫌いなクモの侵入経路を監視&特定するため、定点カメラ映像から小さいクモぐらいの大きさを異物検知(動体検知)できるかを検証してみました。
【OpenCV】間違い探しプログラムを作ってみた(検出率97%)
Python+OpenCVを使って5つの間違い探し画像に対して間違い部分に枠を付けるプログラムを作って検証してみたところ検出率97%とそれなりの結果だった。
【書評】Interface (インターフェース) 2020年7月号 AI時代の画像処理教科書
Interface (インターフェース) 2020年7月号 AI時代の画像処理教科書の書評です。本書籍は、画像処理技術を勉強するための入り口として知識の蓄積に役立ちそうです。
2020年4月7日に新型コロナウイルス感染症緊急事態宣言が発令されて2020年5月25日に解除されました。 このコロナショックによるプログラマーへの影響を考えてみました。
投稿した記事がGoogleインデックスに登録されているかをGoogle Search Consoleで確認してインデックス登録リクエストまでを実行してみました。
ブログタイトルをカッコよくするために一文字ずつ入力されていくタイプライター風のアニメーションに変更してオリジナリティを出していきます。 JavaScriptのみで実現していますのでよかったら使ってみてください。
スタードメインでGoogle Search Consoleの「DNSレコードでのドメイン所有権の確認」やってみた
1週間ぐらい前に投稿した記事がGoogle先生でヒットしないので、ちゃんとインデックスされているか確認したく、Google Search Consoleの「DNSレコードでのドメイン所有権の確認」をスタードメインでやってまとめました。
WordPressブログで「にほんブログ村」の登録から設定まで
WordPressブログ+Cocoonテーマで「にほんブログ村」の登録から設定までをやってみます。「にほんブログ村」のランキングを上げることで初心者でもアクセスを獲得することが可能です。
プログラマーが格安でWordPressブログを試行錯誤しながらはじめてみた記録の4日目です。4日目は、実際に「はじめて」ページを投稿して公開します。
プログラマーが格安でWordPressブログを試行錯誤しながらはじめてみた記録の3日目です。3日目は、WordPressテーマとプラグインをインストールします。
プログラマーが格安でWordPressブログを試行錯誤しながらはじめてみた記録の2日目です。2日目は、ドメイン取得 → サーバー構築 → WordPressインストール → WordPress初期設定 → 表示確認をやります。
プログラマーが格安でWordPressブログを試行錯誤しながらはじめてみた記録の1日目です。1日目は、ブログ方針、やるべきことを明確化しています。
はじめまして、そそたたです。新型コロナウィルスにより緊急事態宣言が政府から発令され、仕事も急にテレワークになり不要不朽の外出自粛を強く求められたままゴールデンウィークに突入してしまいました。自宅にて何か新しいことは始めることで不要不朽の外出
「ブログリーダー」を活用して、そそたたさんをフォローしませんか?