Cari Blog Ini

Diberdayakan oleh Blogger.
Rabu, 26 September 2012

Android Populate Spinner From Sqlite Database

Android Populate Spinner From Sqlite Database - welcome to the blog Software Gadget the end of this much calm product information launcing, yes every day there are always products that are removed from various brands, both physical hardware products and software that need new knowledge to use it, well now we will discuss first about Android Populate Spinner From Sqlite Database as you search we have collected a lot of data to make this information as complete as possible for you, please read:

Articles : Android Populate Spinner From Sqlite Database
full Link : Android Populate Spinner From Sqlite Database

You can also see our article on:


Android Populate Spinner From Sqlite Database



















Android Spinner is DropDown Choice List in Android.You can pick up one item and make your choice from list.

When you get Data from database and display in Spinner, So first you have to create database to get data from database and save it in Dynamic Array.

So first Create DataBaseHelper.java that create database and add data in database.


package com.samir.spinner;

import java.util.HashSet;
import java.util.Set;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

public class DatabaseHelper extends SQLiteOpenHelper {
private static final int DB_VERSION = 1;
private static final String DB_NAME = "mydb";
private static final String TABLE_NAME = "mytable";
private static final String _id = "_id";
private static final String name = "name";

public DatabaseHelper(Context context) {
super(context, DB_NAME, null, DB_VERSION);
}

@Override
public void onCreate(SQLiteDatabase db) {
String createTableQuery = "create table " + TABLE_NAME + "(" + _id+ "     INTEGER PRIMARY KEY," + name + " TEXT)";
db.execSQL(createTableQuery);
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)  

        {
db.execSQL("drop table if exists " + TABLE_NAME);
onCreate(db);
}

public void insertData(String label) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(name, label);
db.insert(TABLE_NAME, null, values);
db.close();
}

public Set<String> getAllData() {
Set<String> set = new HashSet<String>();
String selectQuery = "select * from " + TABLE_NAME;
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery(selectQuery, null);
if (cursor.moveToFirst()) {
do {
set.add(cursor.getString(1));
} while (cursor.moveToNext());
}
cursor.close();
db.close();
return set;
}
}


Now you can see Oncreate Method is Create Database and using query you can create database.Database have two column one in _id which is primary key and second is name which we  want to save in database.

Then Using  ContentValue you can insert Data in database see method insertData(String lable) in above class.

Now, To get All data from database you just fire query and its return Cursor.Then put data in dynamic array from cursor.See method  getAllData().

Here i used Set<String> as dynamic array Because Set doesnot allow duplicates.And Spinner only show unique name.

Once you get Set then you can easily convert it in List<String>.Then you can easily append data to spinner using ArrayAdapter.


       Set<String> set = db.getAllData();
       //Convert set into list
  List<String> list = new ArrayList<String>(set);
  //Sort Data Alphabetical order
  Collections.sort(list, new Comparator<String>() {
@Override
public int compare(String lhs, String rhs) {
return lhs.compareTo(rhs);
}
  });
  adapter = new ArrayAdapter<String>(MainActivity.this,
android.R.layout.simple_spinner_item, list);
  adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  spinner.setAdapter(adapter);


Now spinner have listener to listen selected item .
 

spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View v, int position,long id) {
     String name = parent.getItemAtPosition(position).toString();
showToast("You Selected Item :: " + name);
       }
@Override
public void onNothingSelected(AdapterView<?> arg0) {
}
    }); 



Download Full Source Code::

You Can Download Full Source Code



so much information Android Populate Spinner From Sqlite Database

hopefully the information Android Populate Spinner From Sqlite Database that we provide can be useful for you in the set of technology products that fit your daily needs,

have just read the article titled Android Populate Spinner From Sqlite Database if you feel useful information and you want to bookmark or share please use the link https://ramblingsofker.blogspot.com/2012/09/android-populate-spinner-from-sqlite.html and do not forget to go back to this blog if you want to know information about the latest gadgets.

Tag :
Share on Facebook
Share on Twitter
Share on Google+
Tags :

Related : Android Populate Spinner From Sqlite Database

0 komentar:

Posting Komentar