Thursday 27 October 2016

Android Spinner Example.

Android Spinner Example
Spinnertable


SpinnerPHP.php
<?php
$DB_USER='u532517283_user';
$DB_PASS='**********';
$DB_HOST='mysql.hostinger.in';
$DB_NAME='u532517283_bdm';
$mysqli = new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}                              

$mysqli->query("SET NAMES 'utf8'");
$sql="SELECT iname FROM tblinterviewees";
$result=$mysqli->query($sql);
while($e=mysqli_fetch_assoc($result)){
$output[]=$e;
}              

print(json_encode($output));
$mysqli->close();   
?>

AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET" />

Bulid.gradle
compile 'com.loopj.android:android-async-http:1.4.5'

compile files("${android.getSdkDirectory().getAbsolutePath()}" +
 File.separator + "platforms" + File.separator + "android-23" + 
File.separator + "optional" + File.separator + "org.apache.http.legacy.jar")

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

<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="com.example.mihir.myspinnerexample.MainActivity">



    <Spinner

        android:id="@+id/spinner"

        android:layout_width="match_parent"

        android:layout_height="wrap_content">

    </Spinner>



</RelativeLayout>
 
Spinner_layput.xml
<?xml version="1.0" encoding="utf-8"?>

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

    android:orientation="vertical" android:layout_width="match_parent"

    android:layout_height="match_parent">

    <TextView

        android:id="@+id/txt"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:padding="10dp"

        />

</LinearLayout>

MainActivity.java
package com.example.mihir.myspinnerexample;



import android.os.AsyncTask;

import android.support.v7.app.ActionBarActivity;

import android.os.Bundle;

import android.widget.ArrayAdapter;

import android.widget.Spinner;

import org.apache.http.HttpEntity;

import org.apache.http.HttpResponse;

import org.apache.http.client.HttpClient;

import org.apache.http.client.methods.HttpPost;

import org.apache.http.impl.client.DefaultHttpClient;

import org.json.JSONArray;

import org.json.JSONException;

import org.json.JSONObject;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.util.ArrayList;



public class MainActivity extends ActionBarActivity {

    ArrayList<String> listItems=new ArrayList<>();

    ArrayAdapter<String> adapter;

    Spinner sp;

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        sp=(Spinner)findViewById(R.id.spinner);

        adapter=new ArrayAdapter<String>(this,R.layout.spinner_layout,R.id.txt,listItems);

        sp.setAdapter(adapter);



    }

    public void onStart(){

        super.onStart();

        BackTask bt=new BackTask();

        bt.execute();

    }

    private class BackTask extends AsyncTask<Void,Void,Void> {

        ArrayList<String> list;

        protected void onPreExecute(){

            super.onPreExecute();

            list=new ArrayList<>();

        }

        protected Void doInBackground(Void...params){

            InputStream is=null;

            String result="";

            try{

                HttpClient httpclient=new DefaultHttpClient();

                HttpPost httppost= new HttpPost("http://compliments.esy.es/SpinnerPHP.php");

                HttpResponse response=httpclient.execute(httppost);

                HttpEntity entity = response.getEntity();

                // Get our response as a String.

                is = entity.getContent();

            }catch(IOException e){

                e.printStackTrace();

            }

            //convert response to string

            try{

                BufferedReader reader = new BufferedReader(new InputStreamReader(is,"utf-8"));

                String line = null;

                while ((line = reader.readLine()) != null) {

                    result+=line;

                }

                is.close();

                //result=sb.toString();

            }catch(Exception e){

                e.printStackTrace();

            }

            // parse json data

            try{

                JSONArray jArray =new JSONArray(result);

                for(int i=0;i<jArray.length();i++){

                    JSONObject jsonObject=jArray.getJSONObject(i);

                    // add interviewee name to arraylist

                    list.add(jsonObject.getString("iname"));

                }

            }

            catch(JSONException e){

                e.printStackTrace();

            }

            return null;

        }

        protected void onPostExecute(Void result){

            listItems.addAll(list);

            adapter.notifyDataSetChanged();

        }

    }

}


OutPut:

 

No comments:

Post a Comment

CCAvenue Payment Gateway Android Integration

CCAvenue Payment Gateway Android Integration CCAvenue payment gateway android integration using PHP RSA and Response Handling. An...