Developing calculator Android Application
Practical - 9
Develop calculator Android Application.
Code:
MainActivity.java
Develop calculator Android Application.
Code:
MainActivity.java
package com.believe.calculator;
import android.os.Build;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.TextView;
import java.text.DecimalFormat;
public class MainActivity extends AppCompatActivity {
Button mone;
Button mtwo;
Button mthree;
Button mfour;
Button mfive;
Button msix;
Button mseven;
Button meight;
Button mnine;
Button mzero;
Button mdot;
Button mplus;
Button mminus;
Button mmultiply;
Button mdevide;
Button mequal;
Button mallClear;
Button mclear;
Button mpercent;
Button msign;
TextView mdisplay;
TextView moperator;
DecimalFormat decimalFormat = new DecimalFormat("#.##########");
private double valueOne=Double.NaN;
private double valueTwo=0;
private static final char ADDITION = '+';
private static final char SUBTRACTION = '-';
private static final char MULTIPLICATION = '*';
private static final char DIVISION = '/';
private static final char PERCENT = '%';
private char CURRENT_ACTION;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mdisplay=(TextView)findViewById(R.id.tv_display);
moperator=(TextView)findViewById(R.id.tv_op);
mone=(Button)findViewById(R.id.bt_1);
mtwo=(Button)findViewById(R.id.bt_2);
mthree=(Button)findViewById(R.id.bt_3);
mfour=(Button)findViewById(R.id.bt_4);
mfive=(Button)findViewById(R.id.bt_5);
msix=(Button)findViewById(R.id.bt_6);
mseven=(Button)findViewById(R.id.bt_7);
meight=(Button)findViewById(R.id.bt_8);
mnine=(Button)findViewById(R.id.bt_9);
mzero=(Button)findViewById(R.id.bt_0);
mdot=(Button)findViewById(R.id.bt_dot);
mplus=(Button)findViewById(R.id.bt_plus);
mminus=(Button)findViewById(R.id.bt_minus);
mmultiply=(Button)findViewById(R.id.bt_multi);
mdevide=(Button)findViewById(R.id.bt_device);
mequal=(Button)findViewById(R.id.bt_equal);
mallClear=(Button)findViewById(R.id.bt_ac);
mclear=(Button)findViewById(R.id.bt_c);
mpercent=(Button)findViewById(R.id.bt_percent);
msign=(Button)findViewById(R.id.bt_sign);
mone.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"1");
}
});
mtwo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"2");
}
});
mthree.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"3");
}
});
mfour.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"4");
}
});
mfive.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"5");
}
});
msix.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"6");
}
});
mseven.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"7");
}
});
meight.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"8");
}
});
mnine.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"9");
}
});
mzero.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9 && !temp.equals("0"))
mdisplay.setText(temp+"0");
}
});
mdot.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+".");
}
});
mallClear.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mdisplay.setText(null);
moperator.setText(null);
}
});
mclear.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(!temp.equals(""))
{
temp = temp.substring(0, temp.length() - 1);
mdisplay.setText(temp);
}
}
});
mplus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=moperator.getText().toString();
if(!temp.equals("") && mdisplay.getText().toString().equals("")) {
char c = temp.charAt(temp.length() - 1);
if (isOperator(c)) {
String t = temp.substring(0, temp.length() - 1);
t = t + "+";
moperator.setText(t);
}
}
else {
moperator.setText(moperator.getText().toString() + mdisplay.getText().toString() + "+");
}
computeCalculation();
CURRENT_ACTION = ADDITION;
mdisplay.setText(null);
}
});
mminus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=moperator.getText().toString();
if(!temp.equals("") && mdisplay.getText().toString().equals("")) { char c = temp.charAt(temp.length() - 1);
if (isOperator(c)) {
String t = temp.substring(0, temp.length() - 1);
t = t + "-";
moperator.setText(t);
}
}
else {
moperator.setText(moperator.getText().toString() + mdisplay.getText().toString() + "-");
}computeCalculation();
CURRENT_ACTION = SUBTRACTION;
mdisplay.setText(null);
}
});
mdevide.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=moperator.getText().toString();
if(!temp.equals("") && mdisplay.getText().toString().equals("")) { char c = temp.charAt(temp.length() - 1);
if (isOperator(c)) {
String t = temp.substring(0, temp.length() - 1);
t = t + "/";
moperator.setText(t);
}
}
else {
moperator.setText(moperator.getText().toString() + mdisplay.getText().toString() + "/");
}computeCalculation();
CURRENT_ACTION = DIVISION;
mdisplay.setText(null);
}
});
mmultiply.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=moperator.getText().toString();
if(!temp.equals("") && mdisplay.getText().toString().equals("")) { char c = temp.charAt(temp.length() - 1);
if (isOperator(c)) {
String t = temp.substring(0, temp.length() - 1);
t = t + "x";
moperator.setText(t);
}
}
else {
moperator.setText(moperator.getText().toString() + mdisplay.getText().toString() + "x");
}computeCalculation();
CURRENT_ACTION = MULTIPLICATION;
mdisplay.setText(null);
}
});
mpercent.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=moperator.getText().toString();
if(!temp.equals("") && mdisplay.getText().toString().equals("")) { char c = temp.charAt(temp.length() - 1);
if (isOperator(c)) {
String t = temp.substring(0, temp.length() - 1);
t = t + "%";
moperator.setText(t);
}
}
else {
moperator.setText(moperator.getText().toString() + mdisplay.getText().toString() + "%");
}computeCalculation();
CURRENT_ACTION = PERCENT;
mdisplay.setText(null);
}
});
mequal.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
computeCalculation();
mdisplay.setText(decimalFormat.format(valueOne));
moperator.setText(null);
valueOne = Double.NaN;
CURRENT_ACTION = '0';
}
});
msign.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(!temp.equals("") && !temp.equals("0") )
{
if(temp.charAt(0)=='-')
{
temp=temp.substring(1,temp.length());
}
else
{
temp="-"+temp;
}
mdisplay.setText(temp);
}
}
});
}
private void computeCalculation() {
if(!Double.isNaN(valueOne)) {
if(!mdisplay.getText().toString().equals(""))
valueTwo = Double.parseDouble(mdisplay.getText().toString());
else
if(CURRENT_ACTION == ADDITION || CURRENT_ACTION == SUBTRACTION)
valueTwo=0;
else if(CURRENT_ACTION == DIVISION || CURRENT_ACTION == MULTIPLICATION)
valueTwo=1;
mdisplay.setText(null);
if(CURRENT_ACTION == ADDITION)
valueOne = this.valueOne + valueTwo;
else if(CURRENT_ACTION == SUBTRACTION)
valueOne = this.valueOne - valueTwo;
else if(CURRENT_ACTION == MULTIPLICATION)
valueOne = this.valueOne * valueTwo;
else if(CURRENT_ACTION == DIVISION)
valueOne = this.valueOne / valueTwo;
else if(CURRENT_ACTION == PERCENT)
valueOne = this.valueOne % valueTwo;
}
else {
try {
valueOne = Double.parseDouble(mdisplay.getText().toString());
}
catch (Exception e){}
}
}
private boolean isOperator(char c)
{
if(c=='+' || c=='-' || c=='x' || c=='/' || c=='%')
return true;
return false;
}
}
activity_main.xmlimport android.os.Build;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.TextView;
import java.text.DecimalFormat;
public class MainActivity extends AppCompatActivity {
Button mone;
Button mtwo;
Button mthree;
Button mfour;
Button mfive;
Button msix;
Button mseven;
Button meight;
Button mnine;
Button mzero;
Button mdot;
Button mplus;
Button mminus;
Button mmultiply;
Button mdevide;
Button mequal;
Button mallClear;
Button mclear;
Button mpercent;
Button msign;
TextView mdisplay;
TextView moperator;
DecimalFormat decimalFormat = new DecimalFormat("#.##########");
private double valueOne=Double.NaN;
private double valueTwo=0;
private static final char ADDITION = '+';
private static final char SUBTRACTION = '-';
private static final char MULTIPLICATION = '*';
private static final char DIVISION = '/';
private static final char PERCENT = '%';
private char CURRENT_ACTION;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mdisplay=(TextView)findViewById(R.id.tv_display);
moperator=(TextView)findViewById(R.id.tv_op);
mone=(Button)findViewById(R.id.bt_1);
mtwo=(Button)findViewById(R.id.bt_2);
mthree=(Button)findViewById(R.id.bt_3);
mfour=(Button)findViewById(R.id.bt_4);
mfive=(Button)findViewById(R.id.bt_5);
msix=(Button)findViewById(R.id.bt_6);
mseven=(Button)findViewById(R.id.bt_7);
meight=(Button)findViewById(R.id.bt_8);
mnine=(Button)findViewById(R.id.bt_9);
mzero=(Button)findViewById(R.id.bt_0);
mdot=(Button)findViewById(R.id.bt_dot);
mplus=(Button)findViewById(R.id.bt_plus);
mminus=(Button)findViewById(R.id.bt_minus);
mmultiply=(Button)findViewById(R.id.bt_multi);
mdevide=(Button)findViewById(R.id.bt_device);
mequal=(Button)findViewById(R.id.bt_equal);
mallClear=(Button)findViewById(R.id.bt_ac);
mclear=(Button)findViewById(R.id.bt_c);
mpercent=(Button)findViewById(R.id.bt_percent);
msign=(Button)findViewById(R.id.bt_sign);
mone.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"1");
}
});
mtwo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"2");
}
});
mthree.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"3");
}
});
mfour.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"4");
}
});
mfive.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"5");
}
});
msix.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"6");
}
});
mseven.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"7");
}
});
meight.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"8");
}
});
mnine.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+"9");
}
});
mzero.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9 && !temp.equals("0"))
mdisplay.setText(temp+"0");
}
});
mdot.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(temp.length()<9)
mdisplay.setText(temp+".");
}
});
mallClear.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mdisplay.setText(null);
moperator.setText(null);
}
});
mclear.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(!temp.equals(""))
{
temp = temp.substring(0, temp.length() - 1);
mdisplay.setText(temp);
}
}
});
mplus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=moperator.getText().toString();
if(!temp.equals("") && mdisplay.getText().toString().equals("")) {
char c = temp.charAt(temp.length() - 1);
if (isOperator(c)) {
String t = temp.substring(0, temp.length() - 1);
t = t + "+";
moperator.setText(t);
}
}
else {
moperator.setText(moperator.getText().toString() + mdisplay.getText().toString() + "+");
}
computeCalculation();
CURRENT_ACTION = ADDITION;
mdisplay.setText(null);
}
});
mminus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=moperator.getText().toString();
if(!temp.equals("") && mdisplay.getText().toString().equals("")) { char c = temp.charAt(temp.length() - 1);
if (isOperator(c)) {
String t = temp.substring(0, temp.length() - 1);
t = t + "-";
moperator.setText(t);
}
}
else {
moperator.setText(moperator.getText().toString() + mdisplay.getText().toString() + "-");
}computeCalculation();
CURRENT_ACTION = SUBTRACTION;
mdisplay.setText(null);
}
});
mdevide.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=moperator.getText().toString();
if(!temp.equals("") && mdisplay.getText().toString().equals("")) { char c = temp.charAt(temp.length() - 1);
if (isOperator(c)) {
String t = temp.substring(0, temp.length() - 1);
t = t + "/";
moperator.setText(t);
}
}
else {
moperator.setText(moperator.getText().toString() + mdisplay.getText().toString() + "/");
}computeCalculation();
CURRENT_ACTION = DIVISION;
mdisplay.setText(null);
}
});
mmultiply.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=moperator.getText().toString();
if(!temp.equals("") && mdisplay.getText().toString().equals("")) { char c = temp.charAt(temp.length() - 1);
if (isOperator(c)) {
String t = temp.substring(0, temp.length() - 1);
t = t + "x";
moperator.setText(t);
}
}
else {
moperator.setText(moperator.getText().toString() + mdisplay.getText().toString() + "x");
}computeCalculation();
CURRENT_ACTION = MULTIPLICATION;
mdisplay.setText(null);
}
});
mpercent.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=moperator.getText().toString();
if(!temp.equals("") && mdisplay.getText().toString().equals("")) { char c = temp.charAt(temp.length() - 1);
if (isOperator(c)) {
String t = temp.substring(0, temp.length() - 1);
t = t + "%";
moperator.setText(t);
}
}
else {
moperator.setText(moperator.getText().toString() + mdisplay.getText().toString() + "%");
}computeCalculation();
CURRENT_ACTION = PERCENT;
mdisplay.setText(null);
}
});
mequal.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
computeCalculation();
mdisplay.setText(decimalFormat.format(valueOne));
moperator.setText(null);
valueOne = Double.NaN;
CURRENT_ACTION = '0';
}
});
msign.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String temp=mdisplay.getText().toString();
if(!temp.equals("") && !temp.equals("0") )
{
if(temp.charAt(0)=='-')
{
temp=temp.substring(1,temp.length());
}
else
{
temp="-"+temp;
}
mdisplay.setText(temp);
}
}
});
}
private void computeCalculation() {
if(!Double.isNaN(valueOne)) {
if(!mdisplay.getText().toString().equals(""))
valueTwo = Double.parseDouble(mdisplay.getText().toString());
else
if(CURRENT_ACTION == ADDITION || CURRENT_ACTION == SUBTRACTION)
valueTwo=0;
else if(CURRENT_ACTION == DIVISION || CURRENT_ACTION == MULTIPLICATION)
valueTwo=1;
mdisplay.setText(null);
if(CURRENT_ACTION == ADDITION)
valueOne = this.valueOne + valueTwo;
else if(CURRENT_ACTION == SUBTRACTION)
valueOne = this.valueOne - valueTwo;
else if(CURRENT_ACTION == MULTIPLICATION)
valueOne = this.valueOne * valueTwo;
else if(CURRENT_ACTION == DIVISION)
valueOne = this.valueOne / valueTwo;
else if(CURRENT_ACTION == PERCENT)
valueOne = this.valueOne % valueTwo;
}
else {
try {
valueOne = Double.parseDouble(mdisplay.getText().toString());
}
catch (Exception e){}
}
}
private boolean isOperator(char c)
{
if(c=='+' || c=='-' || c=='x' || c=='/' || c=='%')
return true;
return false;
}
}
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:minHeight="25px"
android:minWidth="25px"
android:background="#2c2c2c"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/tv_op"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:paddingRight="10dp"
android:layout_marginTop="10dp"
android:paddingLeft="10dp"
android:textAlignment="textEnd"
android:textColor="#FFF"
android:textSize="30sp"
android:layout_weight="0.48" />
<TextView
android:id="@+id/tv_display"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:paddingRight="10dp"
android:paddingLeft="10dp"
android:paddingBottom="20dp"
android:textAlignment="textEnd"
android:textColor="#FFF"
android:layout_below="@id/tv_op"
android:textSize="60sp"
android:layout_weight="0.48" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="bottom"
android:background="#F44336"
>
<LinearLayout
android:id="@+id/superviserlinearLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:background="@null"
android:minHeight="25px"
android:minWidth="25px"
android:orientation="horizontal"
android:weightSum="4">
<Button
android:id="@+id/bt_ac"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="AC"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
<Button
android:id="@+id/bt_c"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="C"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
<Button
android:id="@+id/bt_device"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="/"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
<Button
android:id="@+id/bt_multi"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:fontFamily="sans-serif"
android:padding="25dp"
android:text="x"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp"
android:typeface="monospace" />
</LinearLayout>
<LinearLayout
android:id="@+id/superviserlinearLayout2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/superviserlinearLayout1"
android:layout_centerHorizontal="true"
android:minHeight="25px"
android:minWidth="25px"
android:orientation="horizontal"
android:weightSum="4">
<Button
android:id="@+id/bt_7"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="7"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_8"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="8"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_9"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="9"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_minus"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="-"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/superviserlinearLayout3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/superviserlinearLayout2"
android:layout_centerHorizontal="true"
android:minHeight="25px"
android:minWidth="25px"
android:orientation="horizontal"
android:weightSum="4">
<Button
android:id="@+id/bt_4"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="4"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_5"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="5"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_6"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="6"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_plus"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="+"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/superviserlinearLayout4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/superviserlinearLayout3"
android:layout_centerHorizontal="true"
android:minHeight="25px"
android:minWidth="25px"
android:orientation="horizontal"
android:weightSum="4">
<Button
android:id="@+id/bt_1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="1"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="2"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="3"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_percent"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="%"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/superviserlinearLayout5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/superviserlinearLayout4"
android:layout_centerHorizontal="true"
android:minHeight="25px"
android:minWidth="25px"
android:orientation="horizontal"
android:weightSum="4">
<Button
android:id="@+id/bt_sign"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="-/+"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
<Button
android:id="@+id/bt_0"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="0"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_dot"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="."
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_equal"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="="
android:textColor="#FFF"
android:textSize="24sp" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</RelativeLayout>
Output:<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:minHeight="25px"
android:minWidth="25px"
android:background="#2c2c2c"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/tv_op"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:paddingRight="10dp"
android:layout_marginTop="10dp"
android:paddingLeft="10dp"
android:textAlignment="textEnd"
android:textColor="#FFF"
android:textSize="30sp"
android:layout_weight="0.48" />
<TextView
android:id="@+id/tv_display"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:paddingRight="10dp"
android:paddingLeft="10dp"
android:paddingBottom="20dp"
android:textAlignment="textEnd"
android:textColor="#FFF"
android:layout_below="@id/tv_op"
android:textSize="60sp"
android:layout_weight="0.48" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="bottom"
android:background="#F44336"
>
<LinearLayout
android:id="@+id/superviserlinearLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:background="@null"
android:minHeight="25px"
android:minWidth="25px"
android:orientation="horizontal"
android:weightSum="4">
<Button
android:id="@+id/bt_ac"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="AC"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
<Button
android:id="@+id/bt_c"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="C"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
<Button
android:id="@+id/bt_device"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="/"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
<Button
android:id="@+id/bt_multi"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:fontFamily="sans-serif"
android:padding="25dp"
android:text="x"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp"
android:typeface="monospace" />
</LinearLayout>
<LinearLayout
android:id="@+id/superviserlinearLayout2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/superviserlinearLayout1"
android:layout_centerHorizontal="true"
android:minHeight="25px"
android:minWidth="25px"
android:orientation="horizontal"
android:weightSum="4">
<Button
android:id="@+id/bt_7"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="7"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_8"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="8"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_9"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="9"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_minus"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="-"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/superviserlinearLayout3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/superviserlinearLayout2"
android:layout_centerHorizontal="true"
android:minHeight="25px"
android:minWidth="25px"
android:orientation="horizontal"
android:weightSum="4">
<Button
android:id="@+id/bt_4"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="4"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_5"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="5"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_6"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="6"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_plus"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="+"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/superviserlinearLayout4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/superviserlinearLayout3"
android:layout_centerHorizontal="true"
android:minHeight="25px"
android:minWidth="25px"
android:orientation="horizontal"
android:weightSum="4">
<Button
android:id="@+id/bt_1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="1"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="2"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="3"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_percent"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="%"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/superviserlinearLayout5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/superviserlinearLayout4"
android:layout_centerHorizontal="true"
android:minHeight="25px"
android:minWidth="25px"
android:orientation="horizontal"
android:weightSum="4">
<Button
android:id="@+id/bt_sign"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="-/+"
android:textColor="@color/button_text_highlighted"
android:textSize="24sp" />
<Button
android:id="@+id/bt_0"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="0"
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_dot"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color"
android:padding="25dp"
android:text="."
android:textColor="@color/button_text"
android:textSize="24sp" />
<Button
android:id="@+id/bt_equal"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@color/button_color_highlighted"
android:padding="25dp"
android:text="="
android:textColor="#FFF"
android:textSize="24sp" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</RelativeLayout>
Comments
Post a Comment