###前提・実現したいこと
ここに質問したいことを詳細に書いてください
(例)PHP(CakePHP)で●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました。
###発生している問題・エラーメッセージ
javaにかなりブランクがあります。
androidのアプリを作ってほしいと頼まれ、着手しています。
が、値渡しで行き詰っています。
fragment_main.xml のボタンが押された情報や、パラメータの取得を
MainActivityで行いたいと考え、下記のようにMainActivityでsetContentViewをし、ボタンが押されたことを取得しようと思ったのですが、参照先が見つからないとエラーが起きており困っています。
xmlでのinclude等も試しましたが解決方法が依然見つからない状態です。
そもそもMainActivityでfragment_mainのパラメータを参照しようとしていることがつくり的に間違っているのかと考え始め、収集がつかない状態になってしまいました。。
以下はfragment_main.xmlでレイアウトされているlogin_buttonが押下されたのをActivityMain.javaで確認し、webviewを開くというイメージで作っています。
エラーメッセージ
FATAL EXCEPTION: main
Process: jp.co.aex.performanceplus, PID: 15738
java.lang.RuntimeException: Unable to start activity ComponentInfo{XXXXX/XXXXX.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
###該当のソースコード
MainActivity.java fragment_main // setContentView(R.layout.fragment_main); Button sendButton = (Button) findViewById(R.id.fragment_main).findViewById(R.id.login_button); sendButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { System.out.println("find View end"); // ボタンをクリックしたときの動作 WebView webView_login; setContentView(R.layout.webview_main); webView_login = (WebView) findViewById(R.id.WebView_main); webView_login.loadUrl("http://www.google.com/"); webView_login.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { return false; } }); } }); ---中略--- fragment_main.xml <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingEnd="1dp"> <!--ログインIDテキスト--> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="ログインID" android:textColor="@android:color/black" android:textSize="24sp" /> <!--ログインIDテキストボックス--> <EditText android:id="@+id/editText2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:ems="10" android:inputType="textPersonName" android:text="IDを入力" android:textColor="@android:color/darker_gray" /> <!--パスワードテキスト--> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="パスワード" android:textColor="@android:color/black" android:textSize="24sp" /> <!--パスワードテキストボックス()--> <EditText android:id="@+id/editText3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:ems="10" android:inputType="numberPassword" android:text="コードを入力" android:textColor="@android:color/darker_gray" /> </LinearLayout> <!--確定ボタン--> <Button android:id="@+id/login_button" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#EB5516" android:elevation="2dp" android:text="ログイン" android:textColor="#FFFFFF" /> </LinearLayout> ---中略---
###試したこと
###補足情報(言語/FW/ツール等のバージョンなど)
android studio , java
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/09/13 03:51
2017/09/13 04:10
2017/09/13 04:15
2017/09/13 05:20
2017/09/13 05:22