質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

1回答

642閲覧

31枚の画像からその日の画像を選んで表示する「日めくりカレンダーアプリ」をandroidstudioで作りたい

ichi_moji

総合スコア13

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

1クリップ

投稿2018/09/16 14:53

タイトルに記入した通りandroidstudioで、日めくりカレンダーアプリを作りたいと思っているのですが、javaには触れたことがなく、ネットでコードを調べつつやってみてはいたのですがどうにもうまくできません...皆さんがこのようなアプリを作るとしたらどのようなコードを用いて作成するのかを知りたいです。

試したこと

試作したコードは手違いで削除してしまったため残っていませんが、内容としては
1、画像を配列としてxmlファイルに用意する。(31枚)
~~onCreateメソッドの中にて~~
2、変数に日付を取得して代入する。
3、用意した配列の(日付―1)番目にある写真を表示する。
というものにしたつもりでした。

補足情報

初めての質問のため至らぬ点がありましたらすみません...

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

swordone

2018/09/16 15:12

「うまくいかない」では伝わりません。何がどううまくいかなかったのかを説明してください。(ex. エラーが出る ○○になるはずなのに××になる etc.)
swordone

2018/09/16 15:27

後から思ったが、「質問内容がない」と思いきや「丸投げ案件」でしたね…
guest

回答1

0

丸投げ質問だと言われてしまっていますが、また1ヶ月も前の質問ですが、少し回答を考えてみましょう。
初めてアプリを作る時って実際何がわからないのかわからないことが多いです。
もし質問者さんがアプリ開発をしたいと望むのなら、次のステップを踏むとよいでしょう。

1.どこまでできるか明確にする

アプリ開発って知識や技術の組み合わせ作業です。
実現したい内容のどこまでができてどこからがわからないのか明確にすることが大事です。

2.部分の実装をやってみる

質問内容の場合、やってみる事は、(1)画像ファイルを画面に表示させること、(2)ボタンを押すことで2つの画像を入れ替えること、(3)日付データから日を抜粋して画面に表示させること、(4)レイアウトに画像エリア(ImageView)とEditTextとButtonの3つの要素を用意して、EditTextに入力した数字とマッチした画像を表示させること
これら4つのことが実現できれば、目的のアプリは作る事ができるでしょう。

3.作ってみる

実際のコードはここには書きません。
作るに当たっての手順を書きます。
まずは、画像の表示(1)ですね。これは、「Android ImageView」で検索するとだいたい実現できるサイトにヒットするでしょう。XMLのレイアウトにImageViewを置いて、リソースファイルをそこに埋め込むだけでできるはずです。リソースファイルはassetsに置いたり、drawableに置いたりという方法がありますね。

次に画像の切り替え(2)ですね。これはさっきのレイアウトにボタンを追加して、ImageViewに振ったid《android:id="@+id/画像のID》のリソースを切り替えられるかです。必要な知識はボタンのonClickイベントを取得して、画像のリソースを切り替えるという大きく2つの知識です。

それがうまくいったら次は今日の日付データから日にちを取得する(3)ことですね。これはDateクラスやCalenderクラスを使う方法が考えられますね。あとはそれをうまく利用するだけです。アプリ起動時にToastで表示できればこのステップは完了ですね。onCreateメソッドで日付を取得してToast表示してみましょう。

もうすぐです。では最後のステップ画像ファイルと入力した数字の紐付け処理(4)です。実際は入力制限とか範囲外の値が入力されたときの例外処理とかをする必要がありますが、今回は練習ですので、それは省きましょう。
用意するレイアウト要素はEditTextとButtonとImageViewですね。
EditTextに1を入力してButtonを押すと1の画像を12を入力してButtonを押すと12の画像を表示させてみましょう。
ButtonのonClickイベントでEditTextの値を読み込み、その値の画像を[画像のID]で指定したImageViewに当てはめてみましょう。

ここまでできれば(3)と(4)の知識を組み合わせるだけ、最後のレイアウトはImageViewだけのレイアウトになります。
onCreateメソッドで日付を取得、リソースを検索、ImageViewに検索したリソースをはめ込むだけ。

4.アプリは知識の組み合わせ

今回は大まかな流れを書きました。アプリケーション全体をみていてはいつまで経ってもアプリはできません。作りたいものを実現するためには、何が必要かを考える事が大事です。
作りたい料理を作るにはどうすればいいか?材料は何が必要か?それぞれの材料の下ごしらえはどうすればいいのかそれを考えるのが大事です。
もしかしたらもう質問者さんはアプリを完成させているかもしれないし、挫折してしまったかもしれませんが、これから新たにアプリを作りたいと思う人の少しでも手助けになると思い回答してみました。

投稿2018/11/06 12:56

tttsak

総合スコア43

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問