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

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

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

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

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

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

Q&A

解決済

1回答

2193閲覧

1つのActivityを複数のclassで呼び出す

syosinsya12

総合スコア69

Java

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

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

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

0グッド

1クリップ

投稿2016/08/14 18:46

Activityと同時に作成されたInput classとまったく同じ内容のInput_a1 classを作成しました。
エラーなどは表示されないのですが、エミュレーターでInput_a1 class を呼び出したときのみ強制終了してしまいます。
想定ではどちらもactivity_inputを開きたいのですがどこがおかしいのでしょうか?

public class Input extends AppCompatActivity { public final static String EXTRA_KAI = "com.example.sample.name.KAI"; public final static String EXTRA_TOU = "com.example.sample.name.TOU"; public final static String EXTRA_KAN = "com.example.sample.name.KAN"; public final static String EXTRA_KAS = "com.example.sample.name.KAS"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_input); } public void get_result (View view){ EditText kai = (EditText) findViewById(R.id.kai); String kai1 =kai.getText().toString().trim(); EditText tou = (EditText) findViewById(R.id.tou); String tou1 = tou.getText().toString().trim(); EditText kan = (EditText) findViewById(R.id.kan); String kan1 = kan.getText().toString().trim(); EditText kas = (EditText) findViewById(R.id.kas); String kas1 = kas.getText().toString().trim(); Intent intent = new Intent(this,Result.class); intent.putExtra(EXTRA_KAI, kai1); intent.putExtra(EXTRA_TOU, tou1); intent.putExtra(EXTRA_KAN, kan1); intent.putExtra(EXTRA_KAS, kas1); startActivity(intent); } } コード
public class Input_a1 extends AppCompatActivity { public final static String EXTRA_KAI = "com.example.sample.name.KAI"; public final static String EXTRA_TOU = "com.example.sample.name.TOU"; public final static String EXTRA_KAN = "com.example.sample.name.KAN"; public final static String EXTRA_KAS = "com.example.sample.name.KAS"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_input); } public void get_result (View view){ EditText kai = (EditText) findViewById(R.id.kai); String kai1 =kai.getText().toString().trim(); EditText tou = (EditText) findViewById(R.id.tou); String tou1 = tou.getText().toString().trim(); EditText kan = (EditText) findViewById(R.id.kan); String kan1 = kan.getText().toString().trim(); EditText kas = (EditText) findViewById(R.id.kas); String kas1 = kas.getText().toString().trim(); Intent intent = new Intent(this,Result.class); intent.putExtra(EXTRA_KAI, kai1); intent.putExtra(EXTRA_TOU, tou1); intent.putExtra(EXTRA_KAN, kan1); intent.putExtra(EXTRA_KAS, kas1); startActivity(intent); } } コード

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

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

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

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

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

guest

回答1

0

ベストアンサー

マニフェストファイルにActivityを登録していますか?新たにActivityを作った際にやりがちなミスです。

投稿2016/08/14 22:28

swordone

総合スコア20651

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

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

syosinsya12

2016/08/15 03:46

登録してあります。Input Classからは呼び出せるので間違いないと思います。
swordone

2016/08/15 03:49

Input_a1の方を登録しているかの問題ですが…
syosinsya12

2016/08/15 03:52

Input_a1はClassです。ActivityはどちらもInputを呼び出したいです。
swordone

2016/08/15 03:55

すみません、質問なんでしたっけ? 「Input_a1 class を呼び出したときのみ強制終了してしまう」のが問題ではなかったのですか?
syosinsya12

2016/08/15 04:04

Input classとInput_a1 classでInput Activityを表示したいです。おっしゃる通り、Input_a1 class を呼び出したときのみ強制終了してしまいます。
swordone

2016/08/15 04:09

ですから、Input_a1をマニフェストにActivityとして登録していないからではないですか? 今ひとつ何をしたいのかわからないのですが、クラス2種類あって、どちらもInputというActivityを出したいということですか? 言ってることがむちゃくちゃですよそれ。
syosinsya12

2016/08/15 04:18 編集

同じActivityを出したいというのは不可能なのですか? 同じレイアウトのInput_a1というActivityを作成する必要があるということですか?
swordone

2016/08/15 04:21

整理します。あなたが言っている「activity_input」は「レイアウト」です。Activityの画面に設定してスマホの画面に出る画面構成のことです。同じレイアウトを使えば、当然同じ構成の画面が作れます。「同じActivityを出す」というのがこの「同じ画面構成のActivityを出す」という意味であれば可能です。しかし、中身含めて全く同じActivityクラスを2つ作る意図がわかりません。 いずれにせよ、新たにActivityを作り、そのActivityを使うというのであれば、マニフェストファイルにそのActivityを登録する必要があります。
syosinsya12

2016/08/15 04:34

同じ画面構成のActivityを出すという意図です。 実際にはget_resultのときに呼び出すクラスをResultとResult_a1と変更するつもりですが、現在の問題としてはget_resultまで行けていないのでまったく同じクラスとして質問させていただきました。 同じ画面構成のActivityを呼び出すにはどうすればいいですか?
swordone

2016/08/15 04:40

人の話を聞いて下さい。 同じ内容のActivityでも構成上は別のActivityなので、マニフェストファイルにActivityを登録する必要があります。 また、あとに飛ぶActivityを変えるというのであれば、飛ぶ際に条件分岐すればいいだけの話ですが、この話は今は置いておきます。
syosinsya12

2016/08/15 04:46

まずandroidmanifestにInput_a1と登録して setContentView(R.layout.activity_input);ここはそのままでよいということですか?
swordone

2016/08/15 04:48

はい。そうです。
syosinsya12

2016/08/15 04:56

なるほど。そもそもActivityの認識が間違っていたのですね。 理解することができました。親切にありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問