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

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

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

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

Android Studio

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

Q&A

解決済

2回答

1925閲覧

Android Studioによるアクティビティ遷移

Lunlunkibun611

総合スコア12

Java

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

Android Studio

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

0グッド

0クリップ

投稿2018/01/04 12:37

###前提・実現したいこと
ただいまAndroid Studioで占いアプリを作成中です。
そこでなのですが、占い結果によってアクティビティを遷移させたいのですが
やり方がどうもわかりません。当然ですが占い結果はランダムです。
現状では、スワイプによってガラガラをまわすとランダムで色玉が出てくるところまでは出来ています。
その色玉(画像)によって遷移先を指定するにはどのようにすればいいのでしょうか。

###発生している問題・エラーメッセージ

###該当のソースコード
現状の該当プログラムコードです。スワイプ時の実行コードです。前で書いた機能以外(音声再生)なども含まれています。当方初心者ですので質の悪いコードだと思いますのでご了承ください。

public boolean onFling(MotionEvent event1, MotionEvent event2, float velocityX, float velocityY) {
findViewById(R.id.gara).startAnimation(AnimationUtils.loadAnimation(Main3Activity.this, R.anim.roll));

new Handler().postDelayed(new Runnable() { TypedArray typedArray = getResources().obtainTypedArray(R.array.rgazou); int i = (int) (Math.floor(Math.random() * (3))); Drawable drawable = typedArray.getDrawable(i); @Override public void run() { findViewById(R.id.boal).startAnimation(AnimationUtils.loadAnimation(Main3Activity.this, R.anim.gara)); boal.setImageDrawable(drawable); soundPool.play(mp2, 1f, 1f, 1, 0, 1f); } }, 4500);

###試したこと
課題に対してアプローチしたことを記載してください

###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報

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

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

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

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

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

guest

回答2

0

ベストアンサー

こんにちは。返信ありがとうございます。コードを書きたいので直接回答欄へ書きます。
本題>>いえいえかなり簡単に実装可能ですよ。でも私には何を保存したいのかよくわかりませんが。。。

データ保存をする際にRealmという機能もあるのですが、占いの結果を保存するだけであれば共有プリファレンスが私的におすすめです。共有プリファレンスとは簡単なデータベースです。
今回の例コードは

例コード ResultCode

Java

1 2//先にMainActivityからIntentデーターを持ってくる 3Intent intent = getIntent(); 4int id = intent.getIntExtra("GOOD_LIVES",0); 5 6//保存メソッドを作る 7private void saveBase(int resultcount){ 8 SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this); 9 SharedPreferences.Editor editor = pref.edit(); 10 11//ここで書き込み結果を保存するコードを打つ 12 editor.putInt("GOOD",good + 1); 13 //ここに文字列int型を配置することによって次回引くときは今回と違うようになるようにgoodを一つ増やしている。下のコミットは絶対につけないと反映されません! 14 editor.commit(); 15 16 17 18

例コード MainActivity

Java

1//ID付きボタンをタップしたときにという操作にこのコードを打ち込む 2Intent intent = new Intent(this, ResultCode.java); 3intent.putExtra("GOOD_LIVES,view.getId()); 4startActivity(intent); 5//この上の行はアクティビティ移行のコードですので任意でどうぞ

投稿2018/01/04 23:42

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

0

私的には画面移行先のアクティビティを一つ作って
そこにimageViewとTextViewを適当に配置してその移行先のViewでランダムに生成するようにしますけどね。

ちなみに画面移行の時はIntentを使用します。
そして画面移行先のプログラムではonCreateを使うと画面を開くたびにランダムで生成されるようになるため私的にはおすすめです。
ちなみにonCreateとは画面が起動されたときに最初に呼び出されるメソッドです。

例文を書いてみると

Java

1@Override 2protected void onCreate(Bundle savedInstanceState){ 3 super.onCreate(savedInstanceState); 4 //省略...このしたにランダムする占いの結果などを書けばできるわけです。 5 6

質問内容とかなりそれてしまいましたが参考程度にどうぞ

投稿2018/01/04 14:21

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

Lunlunkibun611

2018/01/04 14:35

確かにそれならそんなに難しくはないですね。 アクティビティをまたいでデータ保存は難しいですかね・・・
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.47%

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

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

質問する

関連した質問