質問: num1 + num2; display.setText(String.valueOf(total)); } }); } }
回答: まず基本としまして, 1 つのButton に対する ClickListener は1つしか登録できません. setOnClickListener を2回以上呼んだ場合は最後の ClickListener しか有効ではありませんので, 件のコードの場合は num1 への値の設定を行うものは使われず, num2 へ値を設定しているもののみが動作している状態です. ですので, 「ボタンを押すと数値が入力されるところまで出来ました」というのは, 表示はそうかもしれませんが, 内部としては想定された動作(最初のキー押下でnum1に入り, 2番目のキー押下でnum2に入る?)をしていないものと思います. 計算の前にnum1/num2にきちんと値が入るようにする必要があるでしょう. さらに, pbutton の ClickListener で合計を求めていますので, "1" "2" "+"とボタンを押すことで合計が求まる仕様(逆ポーランド)のように見えます. であれば, 「イコールの実装がどう書いたら良いかわかりません」に対しましては, 「必要ありません」と言えます. また, 「イコールのコードを書けば//加算のコードで加算できるようになりますでしょうか?」というご質問には「ご自身でお決めください」としか言えません. 時おりこのように「これで出来ますか」というご質問がありますが, 目的の動作をするように書くのがプログラミングであり, どのようなコードを書くかは本人しか決められません. 「a=b-c」と書いて「加算できますか」と聞かれても, どこかでcの符号を反転するようなコードがあれば, 結果的に加算が「できている」場合もあります.