0% found this document useful (0 votes)
15 views40 pages

Android Record - NMSM

The document describes an Android programming assignment from the Department of Computer Science at NMSM Kalpetta. It includes 4 questions to create basic Android apps: 1) A "Hello World" toast message, 2) An app to add two numbers, 3) An app to display the date and time in a dialog box, and 4) An app to display an alert box with OK and Cancel buttons. It provides the XML layout and Java code for the activity and dialog classes for each question.

Uploaded by

LEESHMA
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)
15 views40 pages

Android Record - NMSM

The document describes an Android programming assignment from the Department of Computer Science at NMSM Kalpetta. It includes 4 questions to create basic Android apps: 1) A "Hello World" toast message, 2) An app to add two numbers, 3) An app to display the date and time in a dialog box, and 4) An app to display an alert box with OK and Cancel buttons. It provides the XML layout and Java code for the activity and dialog classes for each question.

Uploaded by

LEESHMA
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/ 40

Department of Computer Science, NMSM Kalpetta

BCS6B16 - Part A
Android Programming

BSc Computer Science Programme


University of Calicut

IDE Eclipse Juno 4.2.2


ADT Version 23.0.2.1259578
Minimum Required SDK API 16 : Android 4.1 Jellybean
Target SDK API 21 : Android 4.X Lollipop Preview
Compile With API 21 : Android 4.X Lollipop Preview
Package dcs.nmsm
Developer Mr. Ajmal AK
Assistant Professor
Department of Computer Science,
NMSM Government College,
Kalpetta, Wayanad, Kerala, India
contact ajoos47@gmail.com

1
Department of Computer Science, NMSM Kalpetta

1
Question

Hello World Program (Write a program to Toast Hello World)

activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="dcs.nmsm.appone.MainActivity" >

</RelativeLayout>

MainActivity.java
package dcs.nmsm.appone;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;

public class MainActivity extends Activity {

@Override
protected void onResume() {
Toast.makeText(getApplicationContext(),"Hello
World!",Toast.LENGTH_LONG).show();
super.onResume();
}

2
Department of Computer Science, NMSM Kalpetta

Screen Shot

3
Department of Computer Science, NMSM Kalpetta

2
Question

Addition of two Numbers (Write a program to add two numbers)

activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="dcs.nmsm.apptwo.MainActivity" >

<EditText
android:id="@+id/txtNum1"
android:hint="First Number"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="number"

/>
<EditText
android:id="@+id/txtNum2"
android:hint="Second Number"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="number"

/>
<Button
android:id="@+id/btnAdd"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Add Numbers"
/>
<TextView
android:id="@+id/txtResult"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="" />

</LinearLayout>

MainActivity.java
package dcs.nmsm.apptwo;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

4
Department of Computer Science, NMSM Kalpetta

public class MainActivity extends Activity {

EditText n1,n2;

Button b1;

TextView res;

int a,b,sum;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

n1=(EditText)(findViewById(R.id.txtNum1));

n2=(EditText)(findViewById(R.id.txtNum2));

res=(TextView)(findViewById(R.id.txtResult));

b1=(Button)(findViewById(R.id.btnAdd));

b1.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

if(n1.length()>0 && n2.length()>0)

a=Integer.parseInt(n1.getText().toString()) ;

b=Integer.parseInt(n2.getText().toString()) ;

sum=a+b;

res.setText("Sum is "+sum);

else

res.setText("Input Please!");

});

}}

5
Department of Computer Science, NMSM Kalpetta

Screen Shot

6
Department of Computer Science, NMSM Kalpetta

3
Question

Date and Time Dialog box (Write a program to display date and time using dialog box)

activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="dcs.nmsm.datetimedialog.MainActivity" >

<Button
android:id="@+id/btnDialog"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="Show Date and Time" />

</RelativeLayout>

MainActivity.java

package dcs.nmsm.datetimedialog;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.DialogFragment;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {

Button b;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
7
Department of Computer Science, NMSM Kalpetta

setContentView(R.layout.activity_main);

b=(Button)findViewById(R.id.btnDialog);

b.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

ShowDateTimeDialog DT=new ShowDateTimeDialog();

DT.show(getFragmentManager(), null);

});

public class ShowDateTimeDialog extends DialogFragment {

@Override

public Dialog onCreateDialog(Bundle savedInstanceState) {

Calendar c = Calendar.getInstance();

SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyy HH:mm:ss");

String strDate = sdf.format(c.getTime());

AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());

builder.setTitle("Date and Time");

builder.setMessage(strDate);

builder.setNeutralButton("OK", null);

return builder.create();

8
Department of Computer Science, NMSM Kalpetta

Screen Shot

9
Department of Computer Science, NMSM Kalpetta

4
Question

Alert Box (Write a program to Display an alert box with OK and Cancel)

activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="dcs.nmsm.alertbox.MainActivity" >

<Button
android:id="@+id/btnAlert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="Show Alert Box" />

</RelativeLayout>

MainActivity.java
package dcs.nmsm.alertbox;

import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {

Button b;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
b=(Button)findViewById(R.id.btnAlert);
b.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
AlertDialog.Builder builder = new
AlertDialog.Builder(MainActivity.this);
builder.setCancelable(true);
builder.setMessage("This is an Alert Box!");
builder.setPositiveButton("OK",null);
builder.setNeutralButton("Cancel",null);
AlertDialog myAlert = builder.create();
myAlert.show();
}
10
Department of Computer Science, NMSM Kalpetta

});
}
}

Screen Shot

11
Department of Computer Science, NMSM Kalpetta

5
Question

Menu Program (Write a Program to create menu with three menu items)

activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="dcs.nmsm.menudemo.MainActivity" >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Press the Menu Button" />

</RelativeLayout>

main.xml (Main Menu) // add this file to ‘menus’ folder


<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context="dcs.nmsm.menudemo.MainActivity" >

<item
android:id="@+id/item1"
android:showAsAction="never"
android:title="First"/>
<item
android:id="@+id/item2"
android:showAsAction="never"
android:title="Second"/>
<item
android:id="@+id/item3"
android:showAsAction="never"
android:title="Third"/>

</menu>

MainActivity.java
package dcs.nmsm.menudemo;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;

public class MainActivity extends Activity {


12
Department of Computer Science, NMSM Kalpetta

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

@Override

public boolean onCreateOptionsMenu(Menu menu) {

getMenuInflater().inflate(R.menu.main, menu);

return true;

@Override

public boolean onOptionsItemSelected(MenuItem item) {

int id = item.getItemId();

if (id == R.id.item1) {

Toast.makeText(getApplicationContext(), "First Item Selected!",


Toast.LENGTH_SHORT).show();

if (id == R.id.item2) {

Toast.makeText(getApplicationContext(), "Second Item


Selected!", Toast.LENGTH_SHORT).show();

if (id == R.id.item3) {

Toast.makeText(getApplicationContext(), "Third Item Selected!",


Toast.LENGTH_SHORT).show();

//return super.onOptionsItemSelected(item);

return true;

13
Department of Computer Science, NMSM Kalpetta

Screen Shot

14
Department of Computer Science, NMSM Kalpetta

6
Question

Radio Button (Write a Program to select gender using radio button)

activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="dcs.nmsm.radiobutton.MainActivity" >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Select your Gender" />

<RadioGroup
android:id="@+id/rdGender"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >

<RadioButton
android:id="@+id/rdMale"
android:text="Male"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

/>
<RadioButton
android:id="@+id/rdFemale"
android:text="Female"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

/>

</RadioGroup>
<TextView
android:id="@+id/txtGender"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

/>

</LinearLayout>

MainActivity.java

package dcs.nmsm.radiobutton;

import android.app.Activity;
import android.os.Bundle;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
15
Department of Computer Science, NMSM Kalpetta

import android.widget.TextView;

public class MainActivity extends Activity {

RadioButton rm,rf;

RadioGroup rg;

TextView t;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

rm=(RadioButton)findViewById(R.id.rdMale);

rf=(RadioButton)findViewById(R.id.rdFemale);

t=(TextView)findViewById(R.id.txtGender);

rg=(RadioGroup)findViewById(R.id.rdGender);

rg.setOnCheckedChangeListener(new OnCheckedChangeListener() {

@Override

public void onCheckedChanged(RadioGroup group, int checkedId) {

if (rm.isChecked())

t.setText("You are a Man");

if (rf.isChecked())

t.setText("You are a Woman");

});

16
Department of Computer Science, NMSM Kalpetta

Screen Shot

17
Department of Computer Science, NMSM Kalpetta

7
Question

Spinner (Write a Program to spin four items)

activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="dcs.nmsm.spinner.MainActivity" >

<Spinner
android:id="@+id/mySpin"
android:layout_width="match_parent"
android:layout_height="50sp"
android:spinnerMode="dropdown"
/>
</LinearLayout>

MainActivity.java
package dcs.nmsm.spinner;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ArrayAdapter;
import android.widget.Spinner;

public class MainActivity extends Activity {


Spinner spin;
private String[] spinArray;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
spin=(Spinner)findViewById(R.id.mySpin);

this.spinArray = new String[] {"Java", "Pyhton", "PHP", "Perl"};

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,


android.R.layout.simple_spinner_item, spinArray);
spin.setAdapter(adapter);

18
Department of Computer Science, NMSM Kalpetta

Screen Shot

19
Department of Computer Science, NMSM Kalpetta

8
Question

Timer Program (Write a Program to emulate a Stop watch)

activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent"
>

<TextView
android:id="@+id/timerValue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:textSize="40sp"
android:text="00:00:00" />

<Button
android:id="@+id/startButton"
android:layout_width="90dp"
android:layout_height="45dp"
android:layout_gravity="center"
android:text="Start" />

</LinearLayout>

MainActivity.java

package dcs.nmsm.timer;

import android.app.Activity;

import android.os.Bundle;

import android.os.Handler;

import android.os.SystemClock;

import android.view.View;

import android.widget.Button;

import android.widget.TextView;

public class MainActivity extends Activity {

private Button startButton;

20
Department of Computer Science, NMSM Kalpetta

int isOn;

private TextView timerValue;

private long startTime = 0L;

private Handler customHandler = new Handler();

long timeInMilliseconds = 0L;

long timeSwapBuff = 0L;

long updatedTime = 0L;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

isOn=0;

timerValue = (TextView) findViewById(R.id.timerValue);

startButton = (Button) findViewById(R.id.startButton);

startButton.setOnClickListener(new View.OnClickListener() {

public void onClick(View view) {

if(isOn==0)

startTime = SystemClock.uptimeMillis();

customHandler.postDelayed(updateTimerThread, 0);

isOn=1;

startButton.setText("Pause");

else

timeSwapBuff += timeInMilliseconds;

customHandler.removeCallbacks(updateTimerThread);

isOn=0;

startButton.setText("Start");

}
21
Department of Computer Science, NMSM Kalpetta

});

private Runnable updateTimerThread = new Runnable() {

int secs,mins,milliseconds;

public void run() {

timeInMilliseconds = SystemClock.uptimeMillis() - startTime;


updatedTime = timeSwapBuff + timeInMilliseconds;
secs = (int) (updatedTime / 1000);
mins = secs / 60;
secs = secs % 60;
milliseconds = (int) (updatedTime % 1000);
timerValue.setText("" + mins + ":"
+ String.format("%02d", secs) + ":"
+ String.format("%03d", milliseconds));
customHandler.postDelayed(this, 0);
}

};

Screen Shot

22
Department of Computer Science, NMSM Kalpetta

9
Question

Check box (Write a Program to check the items listed)

activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="dcs.nmsm.checkbox.MainActivity"
android:paddingLeft="20sp"
android:paddingTop="20sp">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Malayalam" />

<CheckBox
android:id="@+id/chkMalRead"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Read" />
<CheckBox
android:id="@+id/chkMalWrite"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Write" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="English" />
<CheckBox
android:id="@+id/chkEngRead"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Read" />
<CheckBox
android:id="@+id/chkEngWrite"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Write" />

<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click"/>
<TextView
android:id="@+id/res"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="" />

</LinearLayout>

23
Department of Computer Science, NMSM Kalpetta

MainActivity.java
package dcs.nmsm.checkbox;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.TextView;

public class MainActivity extends Activity {

CheckBox mr,mw,er,ew;
Button b;
TextView res;
String Summary;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

mr=(CheckBox)findViewById(R.id.chkMalRead);
mw=(CheckBox)findViewById(R.id.chkMalWrite);
er=(CheckBox)findViewById(R.id.chkEngRead);
ew=(CheckBox)findViewById(R.id.chkEngWrite);
res=(TextView)findViewById(R.id.res);
b=(Button)findViewById(R.id.btn);
b.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
Summary="";
if(mr.isChecked())
{
Summary+="Read Malayalam,";
}
if(mw.isChecked())
{
Summary+="Write Malayalam,";
}
if(er.isChecked())
{
Summary+="Read English,";
}
if(ew.isChecked())
{
Summary+="Write English";
}
if(Summary.length()<10)
res.setText("You are an illiterate " );
else
res.setText("You can " + Summary);

}
});

24
Department of Computer Science, NMSM Kalpetta

Screen Shot

25
Department of Computer Science, NMSM Kalpetta

10
Question

Date Time Picker (Write a Program to select current system time using date time picker)

activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="dcs.nmsm.datetimepicker.MainActivity" >

<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/in_date"
android:inputType="date"

/>

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:text="Select Date"
android:id="@+id/btn_date"
/>

<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="time"
android:id="@+id/in_time"
/>

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:text="Select Time"
android:id="@+id/btn_time"
/>

</LinearLayout>

MainActivity.java
package dcs.nmsm.datetimepicker;

import android.app.Activity;

import android.app.DatePickerDialog;

import android.app.TimePickerDialog;

import android.os.Bundle;

26
Department of Computer Science, NMSM Kalpetta

import android.view.View;

import android.widget.Button;

import android.widget.DatePicker;

import android.widget.EditText;

import android.widget.TimePicker;

import java.util.Calendar;

public class MainActivity extends Activity implements View.OnClickListener

Button btnDatePicker, btnTimePicker;

EditText txtDate, txtTime;

private int mYear, mMonth, mDay, mHour, mMinute;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

btnDatePicker=(Button)findViewById(R.id.btn_date);

btnTimePicker=(Button)findViewById(R.id.btn_time);

txtDate=(EditText)findViewById(R.id.in_date);

txtTime=(EditText)findViewById(R.id.in_time);

btnDatePicker.setOnClickListener(this);

btnTimePicker.setOnClickListener(this);

@Override

public void onClick(View v)

if (v == btnDatePicker)

// Get Current Date

final Calendar c = Calendar.getInstance();

mYear = c.get(Calendar.YEAR);

mMonth = c.get(Calendar.MONTH);

mDay = c.get(Calendar.DAY_OF_MONTH);

27
Department of Computer Science, NMSM Kalpetta

DatePickerDialog datePickerDialog = new DatePickerDialog(this,

new DatePickerDialog.OnDateSetListener() {

@Override

public void onDateSet(DatePicker view, int year,int monthOfYear, int


dayOfMonth)

txtDate.setText(dayOfMonth + "-" + (monthOfYear + 1) + "-" + year);

}}, mYear, mMonth, mDay);

datePickerDialog.show();

if (v == btnTimePicker)

// Get Current Time

final Calendar c = Calendar.getInstance();

mHour = c.get(Calendar.HOUR_OF_DAY);

mMinute = c.get(Calendar.MINUTE);

// Launch Time Picker Dialog

TimePickerDialog timePickerDialog = new TimePickerDialog(this,

new TimePickerDialog.OnTimeSetListener() {

@Override

public void onTimeSet(TimePicker view, int hourOfDay,int minute)

txtTime.setText(hourOfDay + ":" + minute); }}, mHour, mMinute, false);

timePickerDialog.show();

28
Department of Computer Science, NMSM Kalpetta

Screen Shot

29
Department of Computer Science, NMSM Kalpetta

11
Question

Grid View (Write a Program to display contacts using Grid View Control)

activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"

tools:context="dcs.nmsm.gridcontacts.MainActivity" >

<GridView
android:id="@+id/gridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:numColumns="auto_fit"
android:columnWidth="100dp"
android:stretchMode="columnWidth"
android:gravity="center"
/>

</LinearLayout>

cell.xml // add this file into ‘layouts’ folder


<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="20dp"
android:textSize="14sp">
</TextView>

// add this permission tag to ‘AndroidManifest.xml’


<uses-permission android:name="android.permission.READ_CONTACTS" />

MainActivity.java
package dcs.nmsm.gridcontacts;

import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.database.Cursor;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.widget.ArrayAdapter;
import android.widget.GridView;

30
Department of Computer Science, NMSM Kalpetta

public class MainActivity extends Activity

GridView gv;
List<String> Names ;
@Override

protected void onCreate(Bundle savedInstanceState)

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Names = new ArrayList<String>();
gv = (GridView)findViewById(R.id.gridview);
Cursor phones =
getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_U
RI, null,null,null, null);

while (phones.moveToNext())

String
name=phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKind
s.Phone.DISPLAY_NAME));

Names.add(name);

//uncomment if u want to display the contact details

//String phoneNumber =
phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Pho
ne.NUMBER));

phones.close();

gv.setAdapter(new ArrayAdapter<String>(this, R.layout.cell,Names));

}}

Screen Shot

31
Department of Computer Science, NMSM Kalpetta

12
Question

Image View (Write a Program to Display images from local storage of the device)

activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<ImageView
android:id="@+id/imgView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1" >
</ImageView>

<Button
android:id="@+id/buttonLoadPicture"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0"
android:onClick="loadImagefromGallery"
android:text="Load Picture" >
</Button>

</LinearLayout>

// add this permission tag to ‘AndroidManifest.xml’


<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

MainActivity.java
package dcs.nmsm.imagegallery;

import android.app.Activity;
import android.content.Intent;
import android.database.Cursor;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import android.view.View;
import android.widget.ImageView;
import android.widget.Toast;

public class MainActivity extends Activity {


private static int imgloaded = 1;
String imgPath;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
32
Department of Computer Science, NMSM Kalpetta

public void loadImagefromGallery(View view) {


// Create intent to Open Gallery
Intent galleryIntent = new
Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.EXTERNAL
_CONTENT_URI);
startActivityForResult(galleryIntent, imgloaded);
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent
data) {
super.onActivityResult(requestCode, resultCode, data);
try
{
if (requestCode == imgloaded && resultCode == RESULT_OK&& null
!= data)
{

Uri selectedImage = data.getData();


String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor =
getContentResolver().query(selectedImage,filePathColumn, null, null, null);
cursor.moveToFirst();

int columnIndex = cursor.getColumnIndex(filePathColumn[0]);


imgPath = cursor.getString(columnIndex);
cursor.close();
ImageView imgView = (ImageView) findViewById(R.id.imgView);
imgView.setImageBitmap(BitmapFactory.decodeFile(imgPath));

}
else
{
Toast.makeText(this, "No Images Selected!",
Toast.LENGTH_LONG).show();
}
}
catch (Exception e)
{
Toast.makeText(this, "Something went wrong",Toast.LENGTH_LONG).show();
}
}
}

Screen Shot

33
Department of Computer Science, NMSM Kalpetta

13
Question

List View (Write a Program to Display the contacts in a list)

activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity" >

<ListView
android:id="@+id/mylist"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
/>

</LinearLayout>

listitem.xml // add this file into ‘layouts’ folder


<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="20dp"
android:textSize="14sp">
</TextView>

// add this permission tag to ‘AndroidManifest.xml’


<uses-permission android:name="android.permission.READ_CONTACTS" />

MainActivity.java
package dcs.nmsm.listcontacts;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.database.Cursor;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class MainActivity extends Activity {


ListView contactslist;
List<String> Names ;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
contactslist=(ListView)findViewById(R.id.mylist);
Names = new ArrayList<String>();
Cursor phones =
getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_U
34
Department of Computer Science, NMSM Kalpetta

RI, null,ContactsContract.Contacts.HAS_PHONE_NUMBER + "=?", new String[] {


"1" }, null);
while (phones.moveToNext())
{
String
name=phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKind
s.Phone.DISPLAY_NAME));
Names.add(name);
}
phones.close();
contactslist.setAdapter(new
ArrayAdapter<String>(this,R.layout.listitem,Names));

Screen Shot

35
Department of Computer Science, NMSM Kalpetta

14
Question

Sqlite Log In (Write a program for Log in Using username and password )

activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical">

<EditText
android:id="@+id/uname"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="Enter Username"/>
<EditText
android:id="@+id/password"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:hint="Enter Password"/>
<Button
android:id="@+id/login"
android:text="Login"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>

MainActivity.java
package dcs.nmsm.login;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import android.widget.Toast;

public class MainActivity extends Activity {

EditText uname,pswd;

Button login;

DbHandler db;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
36
Department of Computer Science, NMSM Kalpetta

setContentView(R.layout.activity_main);

uname=(EditText)findViewById(R.id.uname);

pswd=(EditText)findViewById(R.id.password);

login=(Button)findViewById(R.id.login);

login.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v)

String name=uname.getText().toString();

String password=pswd.getText().toString();

int id= checkUser(new User(name,password));

if(id==-1)

Toast.makeText(MainActivity.this,"Invalid Login
Credentials!",Toast.LENGTH_SHORT).show();

else

Toast.makeText(MainActivity.this,"Login Success!
"+name,Toast.LENGTH_LONG).show();

}});

db=new DbHandler(MainActivity.this);

//inserting dummy users

db.addUser(new User("Admin", "Admin"));

db.addUser(new User("User", "User"));

db.addUser(new User("Ajmal", "Password"));

public int checkUser(User user)

return db.checkUser(user);

DbHandler.java //creating SQLite db

package dcs.nmsm.login;
import android.content.ContentValues;
import android.content.Context;
37
Department of Computer Science, NMSM Kalpetta

import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DbHandler extends SQLiteOpenHelper {

private static final int Db_Version=1;


private static final String Db_Name="users";
private static final String Table_Name="user";
private static final String User_id="id";
private static final String User_name="name";
private static final String User_password="password";
//constructor here
public DbHandler(Context context)
{
super(context,Db_Name,null,Db_Version);
}
//creating table
@Override
public void onCreate(SQLiteDatabase db) {
// writing command for sqlite to create table with required attribs
String Create_Table="CREATE TABLE " + Table_Name + "(" + User_id
+ " INTEGER PRIMARY KEY," + User_name + " TEXT," + User_password + " TEXT"
+ ")";
db.execSQL(Create_Table);
}
//Upgrading the Db
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
//Drop table if exists
db.execSQL("DROP TABLE IF EXISTS " + Table_Name);
//create the table again
onCreate(db);
}
//Add new User by calling this method
public void addUser(User usr)
{
// getting db instance for writing the user
SQLiteDatabase db=this.getWritableDatabase();
ContentValues cv=new ContentValues();
cv.put(User_name,usr.getName());
cv.put(User_password,usr.getPassword());
//inserting row
db.insert(Table_Name, null, cv);
//close the database to avoid any leak
db.close();
}
public int checkUser(User us)
{
int id=-1;
SQLiteDatabase db=this.getReadableDatabase();
Cursor cursor=db.rawQuery("SELECT id FROM user WHERE name=? AND
password=?",new String[]{us.getName(),us.getPassword()});
if(cursor.getCount()>0) {
cursor.moveToFirst();
id=cursor.getInt(0);
cursor.close();
}
return id;
}
}

38
Department of Computer Science, NMSM Kalpetta

User.java //manipulating user data

package dcs.nmsm.login;

//this is model class


public class User {
//variables
int id;
String name;
String password;
// Constructor with two parameters name and password
public User(String name,String password)
{
this.name=name;
this.password=password;
}
//Parameter constructor containing all three parameters
public User(int id,String name,String psd)
{
this.id=id;
this.name=name;
this.password=psd;
}
//getting id
public int getId() {
return id;
}
//setting id
public void setId(int id) {
this.id = id;
}
//getting name
public String getName() {
return name;
}
//setting name
public void setName(String name) {
this.name = name;
}
//getting password
public String getPassword() {
return password;
}
//setting password
public void setPassword(String password) {
this.password = password;
}
}

39
Department of Computer Science, NMSM Kalpetta

Screen Shot

40

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