Advertisement
Stiliyan_Koev

Android Fake Calculator

Apr 22nd, 2018
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.15 KB | None | 0 0
  1. package com.example.calculator;
  2.  
  3. import android.content.res.Resources;
  4. import android.graphics.Bitmap;
  5. import android.graphics.Canvas;
  6. import android.graphics.Color;
  7. import android.graphics.Paint;
  8. import android.media.Image;
  9. import android.support.v7.app.AppCompatActivity;
  10. import android.os.Bundle;
  11. import android.util.DisplayMetrics;
  12. import android.util.TypedValue;
  13. import android.view.View;
  14. import android.widget.Button;
  15. import android.widget.EditText;
  16. import android.widget.ImageView;
  17.  
  18. public class MainActivity extends AppCompatActivity {
  19.  
  20.     Button buttonEquals, buttonSqrt;
  21.     EditText firstOperand, secondOperand, operation, result, sqrtNumber;
  22.     ImageView imgView;
  23.  
  24.     String resultToBePrinted;
  25.     int firstNumber = 0;
  26.     int secondNumber = 0;
  27.  
  28.     @Override
  29.     protected void onCreate(Bundle savedInstanceState) {
  30.         super.onCreate(savedInstanceState);
  31.         setContentView(R.layout.activity_main);
  32.  
  33.         buttonEquals = (Button) findViewById(R.id.btn_result);
  34.         buttonSqrt = (Button) findViewById(R.id.btn_sqrt);
  35.  
  36.         firstOperand = (EditText) findViewById(R.id.tv_firstOperand);
  37.         secondOperand = (EditText) findViewById(R.id.tv_secondOperand);
  38.         operation = (EditText) findViewById(R.id.tv_operation);
  39.         result = (EditText) findViewById(R.id.tv_result);
  40.         sqrtNumber = (EditText) findViewById(R.id.tv_sqrt);
  41.         imgView = (ImageView) findViewById(R.id.imageView);
  42.  
  43.         buttonEquals.setOnClickListener(new View.OnClickListener() {
  44.             public void onClick(View v) {
  45.                 firstNumber = Integer.parseInt(String.valueOf(firstOperand.getText()));
  46.                 secondNumber = Integer.parseInt(String.valueOf(secondOperand.getText()));
  47.                 String sign = String.valueOf(operation.getText());
  48.  
  49.                 switch (sign) {
  50.                     case "-":
  51.                         resultToBePrinted = String.valueOf(firstNumber - secondNumber);
  52.                         break;
  53.                     case "+":
  54.                         resultToBePrinted = String.valueOf(firstNumber + secondNumber);
  55.                         break;
  56.                     case"/":
  57.                         resultToBePrinted = String.valueOf(firstNumber / secondNumber);
  58.                         break;
  59.                     case"*":
  60.                         resultToBePrinted = String.valueOf(firstNumber * secondNumber);
  61.                         break;
  62.                     default:
  63.                         resultToBePrinted = "error";
  64.                         break;
  65.  
  66.                 }
  67.                 setResult();
  68.                 drawRectangle(firstNumber, secondNumber);
  69.             }
  70.         });
  71.  
  72.         buttonSqrt.setOnClickListener(new View.OnClickListener() {
  73.             @Override
  74.             public void onClick(View v) {
  75.                 int number = Integer.parseInt(String.valueOf(sqrtNumber.getText()));
  76.                 double result = Math.sqrt(number);
  77.                 sqrtNumber.setText(String.valueOf(result));
  78.             }
  79.         });
  80.     }
  81.  
  82.  
  83.     protected void setResult(){
  84.         result.setText(resultToBePrinted);
  85.     }
  86.  
  87.     protected void drawRectangle(int firstNumber, int secondNumber){
  88.  
  89.         imgView.setVisibility(View.VISIBLE);
  90.         Bitmap bitmap = Bitmap.createBitmap((int) getWindowManager()
  91.                 .getDefaultDisplay().getWidth(), (int) getWindowManager()
  92.                 .getDefaultDisplay().getHeight(), Bitmap.Config.ARGB_8888);
  93.         Canvas canvas = new Canvas(bitmap);
  94.         imgView.setImageBitmap(bitmap);
  95.         Paint paint = new Paint();
  96.         float left = imgView.getWidth()/2;
  97.         float top = imgView.getHeight()/2;
  98.         int a = firstNumber * 10;
  99.         int b = secondNumber * 10;
  100.         paint.setStrokeWidth(1);
  101.         paint.setColor(Color.BLUE);
  102.  
  103.         Resources r = getResources();
  104.         float aPx = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, firstNumber, r.getDisplayMetrics());
  105.         float bPx = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, secondNumber, r.getDisplayMetrics());
  106.  
  107.  
  108.         aPx *=10;
  109.         bPx *=10;
  110.         canvas.drawRect(10,10,90,90,paint);
  111.     }
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement