Mobile App Development

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

UNIVERSITY OF WAH

DEPARTMENT OF COMPUTER SCIENCE


MOBILE APPLICATION DEVELOPMENT
ASSIGNMENT NO 1
SUBMITED TO: MAM ISRA NAZ
SUBMITED BY: ADEEL AHMAD REG NO: UW-18-CS-BS-002
XML CODE:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical"
android:background="@color/black">

<EditText
android:layout_width="match_parent"
android:layout_height="100dp"
android:layout_marginTop="50dp"
android:fontFamily="serif-monospace"
android:text="0"
android:textColor="@color/white"
android:textSize="50dp"
android:inputType="textPersonName"
android:id="@+id/edittext"
android:gravity="right|center"
></EditText>

<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginRight="5dp"
android:fontFamily="serif-monospace"
android:text="C"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#E30B0B"
android:id="@+id/buC"
android:onClick="acEvent"></Button>

</RelativeLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp">

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="5dp"
android:fontFamily="serif-monospace"
android:text="7"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bu7"
android:onClick="numberEvent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="8"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bu8"
android:onClick="numberEvent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="9"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bu9"
android:onClick="numberEvent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="*"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bumul"
android:onClick="OperatorEvent"></Button>

</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp">

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="5dp"
android:fontFamily="serif-monospace"
android:text="4"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bu4"
android:onClick="numberEvent"></Button>
<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="5"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bu5"
android:onClick="numberEvent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="6"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bu6"
android:onClick="numberEvent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="-"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/buminus"
android:onClick="OperatorEvent"></Button>

</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp">

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="5dp"
android:fontFamily="serif-monospace"
android:text="1"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bu1"
android:onClick="numberEvent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="2"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bu2"
android:onClick="numberEvent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="3"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bu3"
android:onClick="numberEvent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="+"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/buplus"
android:onClick="OperatorEvent"></Button>

</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp">

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="5dp"
android:fontFamily="serif-monospace"
android:text="."
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bupoint"
android:onClick="numberEvent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="0"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bu0"
android:onClick="numberEvent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="/"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/budiv"
android:onClick="OperatorEvent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="="
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/buequal"
android:onClick="EqualEvent"></Button>

</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp">

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="5dp"
android:fontFamily="serif-monospace"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:text="Ⓒ"
></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="+/-"
android:textSize="24dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/buplusminus"
android:onClick="numberEvent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:text="%"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:id="@+id/bupercent"
android:onClick="percentevent"></Button>

<Button
android:layout_width="wrap_content"
android:layout_height="80dp"
android:layout_marginLeft="10dp"
android:fontFamily="serif-monospace"
android:textSize="30dp"
app:cornerRadius="20dp"
android:backgroundTint="#F15A2B"
android:text="Ⓒ"
></Button>

</LinearLayout>

</LinearLayout>

GUI:
JAVA CODING:
package com.example.calculatorapp;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.EditText;

public class MainActivity extends AppCompatActivity {


EditText ed1;
boolean isnewop=true;
String op="+";
String oldnum="";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ed1=findViewById(R.id.edittext);
}

public void numberEvent(View view) {


if(isnewop)
ed1.setText("");
isnewop=false;
String number=ed1.getText().toString();
switch(view.getId()){

case R.id.bu1:
number+="1";
break;
case R.id.bu2:
number+="2";
break;
case R.id.bu3:
number+="3";
break;
case R.id.bu4:
number+="4";
break;
case R.id.bu5:
number+="5";
break;
case R.id.bu6:
number+="6";
break;
case R.id.bu7:
number+="7";
break;
case R.id.bu8:
number+="8";
break;
case R.id.bu9:
number+="9";
break;
case R.id.bu0:
number+="0";
break;
case R.id.bupoint:
number+=".";
break;
case R.id.buplusminus:
number="-"+number;
break;
}
ed1.setText(number);
}

public void OperatorEvent(View view) {


isnewop=true;
oldnum=ed1.getText().toString();
switch(view.getId())
{
case R.id.budiv: op="/"; break;
case R.id.bumul: op="*"; break;
case R.id.buminus: op="-"; break;
case R.id.buplus: op="+"; break;
}

public void EqualEvent(View view) {


String newnum=ed1.getText().toString();
double result=0.0;
switch (op){
case "+":

result=Double.parseDouble(oldnum)+Double.parseDouble(newnum);
break;
case "-":
result=Double.parseDouble(oldnum)-
Double.parseDouble(newnum);
break;
case "*":

result=Double.parseDouble(oldnum)*Double.parseDouble(newnum);
break;
case "/":

result=Double.parseDouble(oldnum)/Double.parseDouble(newnum);
break;
}
ed1.setText(result+"");
}

public void acEvent(View view) {


ed1.setText("0");
isnewop=true;
}

public void percentevent(View view) {


double no=Double.parseDouble(ed1.getText().toString())/100;
ed1.setText(no+"%");
isnewop=true;
}
}

You might also like