Kiran_b
Kiran_b

Reputation: 199

How to show Spinner selected Item first in Android

In my application i have one spinner with data Cart,Trolley,Lorry,Truck etc.. in a button click i am saving spinner selected item and other items in the data base. Now in another button click i want to display all saved data,so in that i want to display previously saved spinner item first instead of default one.

How can i achieve this,please anyone suggest me

Ex:in spinner 1,2,3,4 displayed now if i select 3 and saved in data base now this time i want to show spinner data as 3,4,1,2.

Upvotes: 0

Views: 4072

Answers (4)

neeraj t
neeraj t

Reputation: 4764

ArrayList listArray = new ArrayList();

    listArray.add("one");
    listArray.add("two");
    listArray.add("three");

      ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                android.R.layout.simple_spinner_item, listArray.toArray(strArray););
        spinner2.setAdapter(adapter);

here took items as ArrayList and when user click on any item , break that arraylist in two part start to that point and point to last. then take one temp arraylist and add second part then first part so in that one . and again call

adapter = new ArrayAdapter<String>(this,
                    android.R.layout.simple_spinner_item, listArray.toArray(strArray););
            spinner2.setAdapter(adapter);

Upvotes: 1

Senthil Mg
Senthil Mg

Reputation: 3313

It's much simple by getting index of spinner from DB and set the currently selected index on spinner item,for example if the spinner position stored in DB then set it as spinner.setSelection(2);// Note : Position starts from 0,1,2,3 on array

Upvotes: 4

Zsombor Erdődy-Nagy
Zsombor Erdődy-Nagy

Reputation: 16914

So I understand you correctly, you want to reorder the spinner items based on the user's previous selection? You just have to update the Adapter that you assigned to the spinner in that case.

I guess you wired up a simple ArrayAdapter in this case, so a basic solution would be to modify the order of the strings contained in that adapter, after selection.

Upvotes: 2

Sandeep Kumar P K
Sandeep Kumar P K

Reputation: 7482

You can change spinner content as below

String[] items = new String[] {"3","4", "1","2"};
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_spinner_item, items);
    spinner2.setAdapter(adapter);

Upvotes: 2

Related Questions