HelloWorld
HelloWorld

Reputation: 17

SQL Server data to Listview or gridview

So I've got this project but I'm not using an SQL database at the moment. I'm kinda new to it but hopefully i can find some answers here.

package com.smartcartv3;

import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.GridView;
import android.widget.ListView;
import android.widget.TextView;

public class MainActivity extends Activity {
private List<Canned_Goods> myCanned = new ArrayList<Canned_Goods>();
private List<Canned_Goods> myBev = new ArrayList<Canned_Goods>();
private ArrayAdapter<String> myList;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    myList=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1);
    ListView list = (ListView)findViewById(R.id.listView1);
    list.setAdapter(myList);
    Button btnClear=(Button)findViewById(R.id.button1);

    populateCannedList();
    populateBevList();
    addcannedtolist();
    addbevtolist();
    btnClear.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            clearOnclicked();

        }

        private void clearOnclicked() {
            myList.clear();
            myList.notifyDataSetChanged();
        }
    });
}



private void addcannedtolist() {
    GridView grid =(GridView) findViewById(R.id.gridView1);
    grid.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View viewClicked, int position,
                long id) {


                Canned_Goods clickedCanned=myCanned.get(position);

                TextView nameText =(TextView) viewClicked.findViewById(R.id.item_txtName);
                nameText.setText(clickedCanned.getName());

                TextView priceText =(TextView) viewClicked.findViewById(R.id.item_txtPrice);
                priceText.setText("" + clickedCanned.getPrice());

                String canned="PHP" + " " + clickedCanned.getPrice()+ " " + clickedCanned.getName();
                myList.add(canned);
                myList.notifyDataSetChanged();


                TextView total=(TextView)findViewById(R.id.textView3);
                total.setText(""+ clickedCanned.getPrice());

        }});;

}

private void addbevtolist() {
    GridView grid =(GridView) findViewById(R.id.gridView2);
    grid.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View viewClicked, int position,
                long id) {

                //Canned_Goods clickedBev=myBev.get(position);


                Canned_Goods clickedBev=myBev.get(position);

                TextView nameText =(TextView) viewClicked.findViewById(R.id.item_txtName);
                nameText.setText(clickedBev.getName());

                TextView priceText =(TextView) viewClicked.findViewById(R.id.item_txtPrice);
                priceText.setText("" + clickedBev.getPrice());

                String bev=clickedBev.getPrice()+ " " + clickedBev.getName();
                myList.add(bev);
                myList.notifyDataSetChanged();

        }});;

}

private void populateCannedList() {
    //This line of codes is what i use to add it on the gridview
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
    myCanned.add(new Canned_Goods("Mang Tomas", 300));
}


public void Canned(View v) {
    GridView grid1 = (GridView) findViewById(R.id.gridView2);
    GridView grid = (GridView) findViewById(R.id.gridView1);
    ArrayAdapter<Canned_Goods> adapter= new MyListAdapter();
    grid.bringToFront();
    grid1.setVisibility(View.INVISIBLE);
    grid.setVisibility(View.VISIBLE);
    grid.setAdapter(adapter);

}

private class MyListAdapter extends ArrayAdapter<Canned_Goods>{
    public MyListAdapter(){
        super(MainActivity.this,R.layout.item_view, myCanned);
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View itemView =convertView;
        if(itemView == null){
            itemView = getLayoutInflater().inflate(R.layout.item_view, parent,false);
        }

        //Find the Canned goods to work with.
        Canned_Goods currentCanned = myCanned.get(position);

        //Fill the grid
        TextView nameText =(TextView) itemView.findViewById(R.id.item_txtName);
        nameText.setText(currentCanned.getName());

        TextView priceText =(TextView) itemView.findViewById(R.id.item_txtPrice);
        priceText.setText("" + currentCanned.getPrice());

        return itemView;

    }


}

private void populateBevList() {
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
    myBev.add(new Canned_Goods("Coke", 300));
}

public void Bev(View v) {
    GridView grid1 = (GridView) findViewById(R.id.gridView1);
    ArrayAdapter<Canned_Goods> adapter= new MyListAdapter1();
    GridView grid = (GridView) findViewById(R.id.gridView2);
    grid.bringToFront();
    grid1.setVisibility(View.INVISIBLE);
    grid.setVisibility(View.VISIBLE);
    grid.setAdapter(adapter);

}

private class MyListAdapter1 extends ArrayAdapter<Canned_Goods>{
    public MyListAdapter1(){
        super(MainActivity.this,R.layout.item_view, myBev);
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View itemView =convertView;
        if(itemView == null){
            itemView = getLayoutInflater().inflate(R.layout.item_view, parent,false);
        }

        //Find the Canned goods to work with.
        Canned_Goods currentCanned = myBev.get(position);

        //Fill the grid
        TextView nameText =(TextView) itemView.findViewById(R.id.item_txtName);
        nameText.setText(currentCanned.getName());

        TextView priceText =(TextView) itemView.findViewById(R.id.item_txtPrice);
        priceText.setText("" + currentCanned.getPrice());

        return itemView;
    }   

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}
}

So basically i wanted to change my code to get the datas in my database. Is it possibly?

Btw i'm using MS SQL Management Studio 2012 Express

Upvotes: 0

Views: 2480

Answers (1)

Ranjit
Ranjit

Reputation: 5150

Some Tips:

if you want to get data from sql server then write an webservice or webapi(mvc) to access data from server database which will return you the data with Json or XML format.

Then you can easily parse the data with equivalent parser.

Access these data and put inside the list or grid through adapter class which will extend the BaseAdapter class and do all stuff inside its getView() method.

For send data to server(via webservice or webapi) just create a JsonStringer object and put your data inside this through key-value pair and then send it to server by the help of HttpPost.

Upvotes: 1

Related Questions