Download as pdf or txt
Download as pdf or txt
You are on page 1of 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