0% found this document useful (0 votes)
17 views9 pages

Practical 9

The document provides examples of code to create toggle buttons and a simple calculator app in Android. In the first example, it shows code for an XML layout file to create a toggle button to display the on/off state of Bluetooth. The second example provides code for an XML layout and Java code to create a basic calculator app with number buttons, arithmetic operator buttons, and a display text view. Buttons are configured to call methods to handle number and operation clicks. The document contains examples of code to implement toggle buttons and create a simple calculator app interface in Android using XML layouts and Java code handlers.

Uploaded by

gauriasalkar111
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views9 pages

Practical 9

The document provides examples of code to create toggle buttons and a simple calculator app in Android. In the first example, it shows code for an XML layout file to create a toggle button to display the on/off state of Bluetooth. The second example provides code for an XML layout and Java code to create a basic calculator app with number buttons, arithmetic operator buttons, and a display text view. Buttons are configured to call methods to handle number and operation clicks. The document contains examples of code to implement toggle buttons and create a simple calculator app interface in Android using XML layouts and Java code handlers.

Uploaded by

gauriasalkar111
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 9

Practical – 09: Develop a program to implement Button, Image Button and

Toggle Button
Exercise

Q1. Write a program to create a toggle button to display ON / OFF Bluetooth on the
display screen.

<?xml version="1.0" encoding="utf-8"?>


<AbsoluteLayout
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">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="40dp"
android:layout_y="140dp"
android:fontFamily="@font/ubuntu"
android:text="Bluetooth"
android:textSize="30sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.18"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.197" />

<ToggleButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30sp"
android:layout_x="240dp"
android:layout_y="130dp"
android:fontFamily="@font/ubuntu"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.77"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.193" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Wi-Fi"
android:textSize="30sp"
android:textStyle="bold"
android:fontFamily="@font/ubuntu"
android:layout_x="40dp"
android:layout_y="240dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.18"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.197" />

<ToggleButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30sp"
android:layout_x="240dp"
android:layout_y="230dp"
android:fontFamily="@font/ubuntu"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.77"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.193" />

</AbsoluteLayout>
Q2. Write a program to create a simple calculator.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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">

<TextView
android:id="@+id/resultTextView"
android:layout_width="match_parent"
android:layout_height="220dp"
android:layout_alignParentTop="true"
android:layout_marginBottom="40dp"
android:text="0"
android:textSize="80sp"
android:gravity="end"
android:paddingTop="20dp"
android:paddingRight="20dp"/>

<Button
android:id="@+id/btnclr"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/resultTextView"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btnpn"
android:layout_weight="1"
android:onClick="onClearButtonClick"
android:text="C"
android:textSize="30sp" />

<Button
android:id="@+id/btnpn"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/resultTextView"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btnper"
android:layout_weight="1"
android:text="+/-"
android:textSize="30sp" />

<Button
android:id="@+id/btnclr1"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/resultTextView"
android:layout_marginTop="12dp"
android:layout_alignParentEnd="true"
android:layout_weight="1"
android:text="C1"
android:textSize="30sp" />

<Button
android:id="@+id/btnper"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/resultTextView"
android:layout_toStartOf="@id/btndiv"
android:layout_marginTop="12dp"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="%"
android:textSize="30sp" />
<Button
android:id="@+id/btn7"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btnclr"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btn8"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="7"
android:textSize="30sp" />

<Button
android:id="@+id/btn8"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btnpn"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btn9"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="8"
android:textSize="30sp" />

<Button
android:id="@+id/btn9"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btnclr1"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btndiv"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="9"
android:textSize="30sp" />

<Button
android:id="@+id/btndiv"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btnper"
android:layout_alignParentEnd="true"
android:layout_marginTop="12dp"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="/"
android:textSize="30sp" />

<Button
android:id="@+id/btn4"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btn7"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btn5"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="4"
android:textSize="30sp" />

<Button
android:id="@+id/btn5"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btn8"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btn6"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="5"
android:textSize="30sp" />

<Button
android:id="@+id/btn6"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btn9"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btnmul"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="6"
android:textSize="30sp" />

<Button
android:id="@+id/btnmul"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btndiv"
android:layout_alignParentEnd="true"
android:layout_marginTop="12dp"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="*"
android:textSize="30sp" />

<Button
android:id="@+id/btn1"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btn4"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btn2"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="1"
android:textSize="30sp" />

<Button
android:id="@+id/btn2"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btn5"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btn3"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="2"
android:textSize="30sp" />

<Button
android:id="@+id/btn3"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btn6"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btnsub"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="3"
android:textSize="30sp" />

<Button
android:id="@+id/btnsub"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btnmul"
android:layout_alignParentEnd="true"
android:layout_marginTop="12dp"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="-"
android:textSize="30sp" />

<Button
android:id="@+id/btndec"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btn1"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btn0"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="."
android:textSize="30sp" />

<Button
android:id="@+id/btn0"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btn2"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btnequal"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="0"
android:textSize="30sp" />

<Button
android:id="@+id/btnequal"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btn3"
android:layout_marginTop="12dp"
android:layout_toStartOf="@id/btnadd"
android:layout_weight="1"
android:onClick="onEqualButtonClick"
android:text="="
android:textSize="30sp" />

<Button
android:id="@+id/btnadd"
android:layout_width="102dp"
android:layout_height="102dp"
android:layout_below="@id/btnsub"
android:layout_alignParentEnd="true"
android:layout_marginTop="12dp"
android:layout_weight="1"
android:onClick="onButtonClick"
android:text="+"
android:textSize="30sp" />

</RelativeLayout>

package com.practical8_2package.practical8_2;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.util.Log;
import org.mariuszgromada.math.mxparser.Expression;

public class MainActivity extends AppCompatActivity {

private TextView resultTextView;


private StringBuilder inputStringBuilder;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

resultTextView = findViewById(R.id.resultTextView);
inputStringBuilder = new StringBuilder();
}

public void onButtonClick(View view) {


Button button = (Button) view;
inputStringBuilder.append(button.getText());
updateResultText();
}

public void onEqualButtonClick(View view) {


try {
double result = eval(inputStringBuilder.toString());
inputStringBuilder.setLength(0);
inputStringBuilder.append(result);
updateResultText();
} catch (Exception e) {
inputStringBuilder.setLength(0);
inputStringBuilder.append("Error");
updateResultText();
}
}

public void onClearButtonClick(View view) {


resultTextView.setText("");
}

private void updateResultText() {


resultTextView.setText(inputStringBuilder.toString());
}

private double eval(String expression) {


try {
Expression exp = new Expression(expression);
return exp.calculate();
} catch (Exception e) {
Log.e("MainActivity", "Error evaluating expression", e);
return Double.NaN;
}
}
}

You might also like