divyansh mago
divyansh mago

Reputation: 13

Problems with app in Android Studio

I was trying to make a simple calculator, but due to some reasons I am not able to get the results.
The app runs but when I press the buttons no pop up result is shown, as intended.

Here is the code:

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.view.View.OnClickListener;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    private EditText number1EditText;
    private EditText number2EditText;
    private Button divideButton;
    private Button multiplyButton;
    private Button addButton;
    private Button subtractButton;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        number1EditText = (EditText) findViewById(R.id.number1EditText);
        number2EditText = (EditText) findViewById(R.id.number2EditText);
        divideButton=(Button)findViewById(R.id.divideButton);
        multiplyButton=(Button)findViewById(R.id.multiplyButton);
        addButton=(Button)findViewById(R.id.addButton);
        subtractButton=(Button)findViewById(R.id.subtractButton);    }
    public void onClick(View v){
        switch (v.getId()){
            case R.id.divideButton:
                division();
                break;
            case R.id.multiplyButton:
                multiplication();
                break;
            case R.id.addButton:
                addition();
                break;
            case R.id.subtractButton:
                subtraction();
                break;}    }
    private void division(){
        String number1 = number1EditText.getText().toString();
        String number2 = number2EditText.getText().toString();
        int answer = Integer.parseInt(number1)/Integer.parseInt(number2);
        Toast.makeText(this,String.valueOf(answer), Toast.LENGTH_LONG).show();}
    private void multiplication(){
        String number1=number1EditText.getText().toString();
        String number2=number2EditText.getText().toString();
        int answer=Integer.parseInt(number1)*Integer.parseInt(number2);
        Toast.makeText(this,String.valueOf(answer),Toast.LENGTH_LONG).show();    }
    private void addition(){
        String number1=number1EditText.getText().toString();
        String number2=number2EditText.getText().toString();
        int answer = Integer.parseInt(number1) + Integer.parseInt(number2);
        Toast.makeText(this,String.valueOf(answer), Toast.LENGTH_LONG).show();    }
    private void subtraction(){
        String number1=number1EditText.getText().toString();
        String number2=number2EditText.getText().toString();
        int answer=Integer.parseInt(number1) - Integer.parseInt(number2);
        Toast.makeText(this,String.valueOf(answer),Toast.LENGTH_LONG).show();    }}

Upvotes: 0

Views: 48

Answers (1)

Zoe - Save the data dump
Zoe - Save the data dump

Reputation: 28238

The solution is very simple and lies here:

divideButton=(Button)findViewById(R.id.divideButton);
multiplyButton=(Button)findViewById(R.id.multiplyButton);
addButton=(Button)findViewById(R.id.addButton);
subtractButton=(Button)findViewById(R.id.subtractButton); 

You find the buttons, but never set onCLickListener. Add this code:

divideButton.setOnClickListener(this);
multiplyButton.setOnClickListener(this);
addButton.setOnClickListener(this); 
subtractButton.setOnClickListener(this);

Upvotes: 2

Related Questions