0% found this document useful (0 votes)
78 views23 pages

Aim: Develop A Program To Wish The User

The document describes the development of Android applications to perform basic arithmetic operations using a calculator. It includes 3 weeks of progress: Week 1 develops an app to wish users good morning, afternoon, or evening based on the current time. Week 2 develops a calculator app with (a) buttons to perform addition, subtraction, multiplication, and division, and (b) an options menu to perform the same operations. Week 3 aims to implement a context menu (floating list) to trigger the arithmetic operations. The code includes Java classes and XML layout files to build the user interfaces and program logic.

Uploaded by

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

Aim: Develop A Program To Wish The User

The document describes the development of Android applications to perform basic arithmetic operations using a calculator. It includes 3 weeks of progress: Week 1 develops an app to wish users good morning, afternoon, or evening based on the current time. Week 2 develops a calculator app with (a) buttons to perform addition, subtraction, multiplication, and division, and (b) an options menu to perform the same operations. Week 3 aims to implement a context menu (floating list) to trigger the arithmetic operations. The code includes Java classes and XML layout files to build the user interfaces and program logic.

Uploaded by

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

Week 1: Wish the user

Aim: Develop a program to wish the user.

1. MainActivity.java

import androidx.appcompat.app.AppCompatActivity;

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

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

public class MainActivity extends AppCompatActivity {


EditText textBox;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textBox=(EditText) findViewById(R.id.name);
}

public void ButtonClick(View view) {


String str="";
String currentTime = new SimpleDateFormat("HH",
Locale.getDefault()).format(new Date());
int hrs=Integer.parseInt(currentTime);
if(hrs<=11)
str="Good Morning";
else if(hrs<=17)
str="Good Afternoon";
else
str="Good Evening";

Toast.makeText(this,textBox.getText().toString().trim()+","+str,
Toast.LENGTH_SHORT).show();
}
}
2. Activity_main.xml

<?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">
<EditText
android:id="@+id/name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/reminder" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:onClick="ButtonClick"
android:text="Click me" />
</RelativeLayout>
Week 2: (a) Calculator with buttons
Aim: Develop a program which will perform the
arithmetic operations.
1. MainActivity.java
import androidx.appcompat.app.AppCompatActivity;

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

public class MainActivity extends AppCompatActivity {


EditText firstNumber,secondNumber,result;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
firstNumber=(EditText)findViewById(R.id.editTextNumberDecimal);

secondNumber=(EditText)findViewById(R.id.editTextNumberDecimal2);
result=(EditText)findViewById(R.id.editTextNumberDecimal3);
}

public void onclick1(View view) {


String fn=firstNumber.getText().toString().trim();
String sn=secondNumber.getText().toString().trim();
if(fn.isEmpty() || sn.isEmpty())
{
result.setText("Input is Error");
}
else {
float a = Float.parseFloat(fn);
float b = Float.parseFloat(sn);
switch (view.getId()) {
case R.id.button:
result.setText("Addition=" + (a + b));
break;
case R.id.button2:
result.setText("Subtraction=" + (a - b));
break;
case R.id.button3:
result.setText("Multiplication=" + (a * b));
break;
case R.id.button4:
result.setText("Division=" + (a / b));
break;
}
}

}
}
2. Activity_main.xml

<?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"
android:orientation="vertical"
tools:context=".MainActivity">

<EditText
android:id="@+id/editTextNumberDecimal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="First Number"
android:inputType="numberDecimal" />

<EditText
android:id="@+id/editTextNumberDecimal2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Second Number"
android:inputType="numberDecimal" />

<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="onclick1"
android:text="Add" />

<Button
android:id="@+id/button2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="onclick1"
android:text="Subtract" />

<Button
android:id="@+id/button3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="onclick1"
android:text="Multiply" />

<Button
android:id="@+id/button4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="onclick1"
android:text="Divide" />
<EditText
android:id="@+id/editTextNumberDecimal3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Result"
android:editable="false"
android:inputType="numberDecimal" />
</LinearLayout>
Week 2: (b) Calculator with options
menu
Aim: Develop a program which will implement Sub
menu in android application

1. MainActivity.java
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.ContextMenu;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
import android.widget.LinearLayout;

public class MainActivity extends AppCompatActivity {


EditText firstNumber, secondNumber, result;
LinearLayout ll1;

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

firstNumber = (EditText)
findViewById(R.id.editTextNumberDecimal);
secondNumber = (EditText)
findViewById(R.id.editTextNumberDecimal2);
result = (EditText)
findViewById(R.id.editTextNumberDecimal3);

ll1 = (LinearLayout) findViewById(R.id.ll);


ll1.setOnCreateContextMenuListener(this);

@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, 0, 0, "Add");
menu.add(0, 1, 1, "Subtract");
menu.add(0, 2, 2, "Multiply");
menu.add(0, 3, 3, "Divide");
return super.onCreateOptionsMenu(menu);
}

@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
String fn = firstNumber.getText().toString().trim();
String sn = secondNumber.getText().toString().trim();
if (fn.isEmpty() || sn.isEmpty()) {
result.setText("Input is Error");
} else {
float a = Float.parseFloat(fn);
float b = Float.parseFloat(sn);
switch (item.getItemId()) {
case 0:
result.setText("Addition=" + (a + b));
break;
case 1:
result.setText("Subtraction=" + (a - b));
break;
case 2:
result.setText("Multiplication=" + (a * b));
break;
case 3:
result.setText("Division=" + (a / b));
break;
}
}
return super.onOptionsItemSelected(item);
}
}
2. Activity_main.xml

<?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"
android:orientation="vertical"
tools:context=".MainActivity">

<EditText
android:id="@+id/editTextNumberDecimal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="First Number"
android:inputType="numberDecimal" />

<EditText
android:id="@+id/editTextNumberDecimal2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Second Number"
android:inputType="numberDecimal" />

<EditText
android:id="@+id/editTextNumberDecimal3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Result"
android:editable="false"
android:inputType="numberDecimal" />
</LinearLayout>
Week 3: Calculator with context menu
Aim: Develop a program to implement Context menu
(Floating List of Menu Items) in android
application
1. MainActivity.java
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.ContextMenu;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
import android.widget.LinearLayout;

public class MainActivity extends AppCompatActivity {


EditText firstNumber,secondNumber,result;
LinearLayout ll1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

firstNumber=(EditText)findViewById(R.id.editTextNumberDecimal);

secondNumber=(EditText)findViewById(R.id.editTextNumberDecimal2);
result=(EditText)findViewById(R.id.editTextNumberDecimal3);

ll1=(LinearLayout)findViewById(R.id.ll);
ll1.setOnCreateContextMenuListener(this);

@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenu.ContextMenuInfo menuInfo) {
menu.add(0,0,0,"Add");
menu.add(0,1,1,"Subtract");
menu.add(0,2,2,"Multiply");
menu.add(0,3,3,"Divide");
menu.setHeaderTitle("Calculator ContextMenu");
super.onCreateContextMenu(menu, v, menuInfo);
}

@Override
public boolean onContextItemSelected(@NonNull MenuItem item) {
String fn=firstNumber.getText().toString().trim();
String sn=secondNumber.getText().toString().trim();
if(fn.isEmpty() || sn.isEmpty())
{
result.setText("Input is Error");
}
else {
float a = Float.parseFloat(fn);
float b = Float.parseFloat(sn);
switch (item.getItemId()) {
case 0:
result.setText("Addition=" + (a + b));
break;
case 1:
result.setText("Subtraction=" + (a - b));
break;
case 2:
result.setText("Multiplication=" + (a * b));
break;
case 3:
result.setText("Division=" + (a / b));
break;
}
}

return super.onContextItemSelected(item);
}

2. Activity_main.xml
<?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"
android:orientation="vertical"
android:id="@+id/ll"
tools:context=".MainActivity">

<EditText
android:id="@+id/editTextNumberDecimal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="First Number"
android:inputType="numberDecimal" />

<EditText
android:id="@+id/editTextNumberDecimal2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Second Number"
android:inputType="numberDecimal" />
<EditText
android:id="@+id/editTextNumberDecimal3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Result"
android:editable="false" />

</LinearLayout>
Week 4: Relative Layout Views
Aim: Develop a program to demonstrate the use of Relative Layout
Views with different attributes
1. Activity_main.xml file
<?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/lblComments"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Comments"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true" />
<EditText
android:id="@+id/txtComments"
android:layout_width="match_parent"
android:layout_height="170dp"
android:textSize="18sp"
android:layout_below="@+id/lblComments"
android:layout_centerHorizontal="true" />
<Button
android:id="@+id/btnSave"
android:layout_width="125dp"
android:layout_height="wrap_content"
android:text="Save"
android:layout_below="@+id/txtComments"
android:layout_alignParentLeft="true"/>
<Button
android:id="@+id/btnCancel"
android:layout_width="124dp"
android:layout_height="wrap_content"
android:text="Cancel"
android:layout_below="@+id/txtComments"
android:layout_alignParentRight="true" />

</RelativeLayout>

2. MainActivity.java

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
Week 5: Linear Layout View
Aim: Develop a program to demonstrate the use of Linear Layout
Views with different attributes.
For vertical orientation

1. Activity_main.xml

<?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"
android:orientation="vertical"
tools:context=".MainActivity">

<Button
android:layout_width="160dp"
android:layout_height="wrap_content"
android:text="Button"
android:layout_gravity="left"
android:layout_weight="1" />
<Button
android:layout_width="160dp"
android:layout_height="wrap_content"
android:text="Button"
android:layout_gravity="center"
android:layout_weight="2" />
<Button
android:layout_width="160dp"
android:layout_height="wrap_content"
android:text="Button"
android:layout_gravity="right"
android:layout_weight="3" />

</LinearLayout>

2. MainActivity.java
import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
For horizontal orientation
1. Activity_main.xml
2. <?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">

<Button
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:layout_weight="1"
android:text="Button1" />

<Button
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2"
android:text="Button2" />

<Button
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_weight="3"
android:text="Button3" />
</LinearLayout>

3. MainActivity.java
import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
Week 6: Custom Button
Aim: Develop a program to implement a Custom Button and handle
the displayed message on button press.
Step 1:

Create an empty activity

Step 2:

Create circle.xml

Select app->res->drawable->new->drawable resource file

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


<shape android:shape="oval"
xmlns:android="http://schemas.android.com/apk/res/android">
<size android:height="100dp" android:width="100dp" />
<stroke android:width="3dp" android:color="#000000" />
<solid android:color="#00ff51" />
</shape>

Step 3: Create rectangle.xml


<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke android:color="#000000" android:width="3dp" />
<solid android:color="#ff0400" />
</shape>

Step 4: Create oval.xml


<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="50dp" />
<stroke android:color="#000000" android:width="3dp" />
<solid android:color="#0004ff" />
</shape>

Step 5: Create round.xml


<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="10dp" />
<stroke android:color="#000000" android:width="3dp" />
<solid android:color="#fff700" />
</shape>

Step 6:
Create activity_main.xml file

<?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:id="@+id/linearLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<Button
android:id="@+id/rect"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_marginTop="61dp"
android:background="@drawable/rectangle"
android:text="Rectangle"
android:layout_gravity="center"/>

<Button
android:id="@+id/rou"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_marginTop="38dp"
android:background="@drawable/round"
android:text="Round Corner"
android:layout_gravity="center"/>

<Button
android:id="@+id/oval"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_marginTop="36dp"
android:background="@drawable/oval"
android:text="Oval"

android:layout_gravity="center"/>

<Button
android:id="@+id/cir"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="49dp"
android:background="@drawable/circle"
android:text="Circle"

android:layout_gravity="center"/>
</LinearLayout>

Step 7: Create MainActivity.java file

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {


Button rect, round, oval, circle;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
rect = (Button) findViewById(R.id.rect);
round = (Button) findViewById(R.id.rou);
oval = (Button) findViewById(R.id.oval);
circle = (Button) findViewById(R.id.cir);
rect.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(),"Rectangle
Button clicked!",Toast.LENGTH_SHORT).show();
}
});
round.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(),"Round rectangle
Button clicked!",Toast.LENGTH_SHORT).show();
}
});
oval.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(),"Oval Button
clicked!",Toast.LENGTH_SHORT).show();
}
});
circle.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(),"Circle Button
clicked!",Toast.LENGTH_SHORT).show();
}
});
}
}

Step 8:
Change the theme in AndroidManifest.xml
android:theme="@style/Theme.AppCompat"
Week 7:
Aim: Develop a program to implement the Table layout in View Group that displays child View
elements in rows and columns.

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


<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000"
android:orientation="vertical"
android:stretchColumns="1">

<TableRow android:padding="5dip">

<TextView
android:layout_height="wrap_content"
android:layout_marginBottom="20dp"
android:layout_span="2"
android:gravity="center_horizontal"
android:text="@string/loginForm"
android:textColor="#0ff"
android:textSize="25sp"
android:textStyle="bold" />
</TableRow>

<TableRow>

<TextView
android:layout_height="wrap_content"
android:layout_column="0"
android:layout_marginLeft="10dp"
android:text="@string/userName"
android:textColor="#fff"
android:textSize="16sp" />

<EditText
android:id="@+id/userName"
android:layout_height="wrap_content"
android:layout_column="1"
android:layout_marginLeft="10dp"
android:background="#fff"
android:hint="@string/userName"
android:padding="5dp"
android:textColor="#000" />
</TableRow>

<TableRow>

<TextView
android:layout_height="wrap_content"
android:layout_column="0"
android:layout_marginLeft="10dp"
android:layout_marginTop="20dp"
android:text="@string/password"
android:textColor="#fff"
android:textSize="16sp" />

<EditText
android:id="@+id/password"
android:layout_height="wrap_content"
android:layout_column="1"
android:layout_marginLeft="10dp"
android:layout_marginTop="20dp"
android:background="#fff"
android:hint="@string/password"
android:padding="5dp"
android:textColor="#000" />
</TableRow>

<TableRow android:layout_marginTop="20dp">

<Button
android:id="@+id/loginBtn"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_span="2"
android:background="#0ff"
android:text="@string/login"
android:textColor="#000"
android:textSize="20sp"
android:textStyle="bold" />
</TableRow>
</TableLayout>
Week 8:
Aim: Develop a program to implement the List View in android
application.

1. MainActivity.java
import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;

public class MainActivity extends ListActivity {

String[] presidents = {
"Dwight D. Eisenhower",
"John F. Kennedy",
"Lyndon B. Johnson",
"Richard Nixon",
"Gerald Ford",
"Jimmy Carter",
"Ronald Reagan",
"George H. W. Bush",
"Bill Clinton",
"George W. Bush",
"Barack Obama"
};
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setListAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, presidents));
}
public void onListItemClick(
ListView parent, View v, int position, long id)
{
Toast.makeText(this,
"You have selected " + presidents[position],
Toast.LENGTH_SHORT).show();
}

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy