Hey Bibek Thanks.
> Try this. On a specific event, set the result and just call finish. That
> should do.

But on what event I call finish? Because here I am just selecting
items from list. And how should I know that user had finished there
selection?

On Dec 22, 3:47 pm, Kumar Bibek <[email protected]> wrote:
> YEah,
>
> Why are you calling finish from onPause method?  It will finish you
> application, even when you would not want it to.
>
> Try this. On a specific event, set the result and just call finish. That
> should do.
>
> Kumar Bibekhttp://techdroid.kbeanie.comhttp://www.kbeanie.com
>
> On Wed, Dec 22, 2010 at 4:14 PM, pramod.deore <[email protected]>wrote:
>
> > Hi I have one activity which invoked another activity
>
> > roomIntent.putExtra("roomName",roomNM );
> > roomIntent.setClass(AddScheduler.this,RoomList.class);
> > startActivityForResult(roomIntent,Room_SELECT);
>
> > protected void start(Intent intent)
> >        {
> >                this.startActivityForResult(intent,Room_SELECT);
> >        }
>
> >        protected void onActivityResult(int requestCode, int resultCode,
> > Intent data)
> >        {
> >                System.out.println (requestCode);
>
> >                switch(requestCode)
> >                {
> >                        case Room_SELECT:
>
> >                                System.out.println (resultCode);  //here it
> > returns 0
> >                                 if (resultCode == RESULT_OK)
> >                                {
> >                                        ...........
> > //Because result code returns 0 therefore this if conditio does not
> > execute.
> >                                }
> >                }
>
> >        }
>
> > And here is my other activity which returns result.
>
> > public class RoomList extends ListActivity
> > {
> > super.onCreate(savedInstanceState);
> >        Bundle extras = getIntent().getExtras();
> >        if(extras !=null)
> >        {
> >                value = extras.getString("roomName");
> >                sw = getSwitchNameArray(value);
> >        }
> >        setListAdapter(new ArrayAdapter<String>(this,
> >                android.R.layout.simple_list_item_multiple_choice,
> > sw));
> >        final ListView listView = getListView();
> >        listView.setItemsCanFocus(true);
> >        listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
>
> > listView.setOnItemClickListener(new ListView.OnItemClickListener() {
>
> >                       �...@override
> >                        public void onItemClick(AdapterView<?> arg0, View
> > arg1, int arg2,
> >                                        long arg3)
> >                        {
> >                                // TODO Auto-generated method stub
> >                                System.out.println ("User checked boxes");
>
> >                                if (listView.isItemChecked(arg2))
> >                                {
> >                                        System.out.println
> > ("###"+listView.getItemAtPosition(arg2));
> >                                        room = (String)
> > listView.getItemAtPosition(arg2);
> >                                        selectedRooms.add(room);
> >                                        System.out.println ("Size
> > is"+selectedRooms.size());
>
> >                                }
>
> >                                else
> >                                {
> >                                        String str = (String)
> > listView.getItemAtPosition(arg2);
> >                                        selectedRooms.remove(str);
> >                                        System.out.println ("Size
> > is"+selectedRooms.size());
> >                                }
> >                        }
>
> >        });
>
> > @Override
> >        protected void onPause()
> >    {
> >        super.onPause();
>
> >        System.out.println ("User click on back button");
>
> >        mySwitches = new String[selectedRooms.size()];
> >        selectedRooms.toArray(mySwitches);
> >        int str = mySwitches.length;
> >        System.out.println ("!...@#!@#...@#"+str);
> >        Intent returnIntent = new Intent();
> >        //returnIntent.putExtra("SelectedSwitches",selectedRooms);
> >        returnIntent.putExtra("SelectedSwitches", str);
> >        setResult(RESULT_OK,returnIntent);
> >        System.out.println ("Before calling finish");
> >        finish();
> >        System.out.println ("After calling finish");
> >        }
>
> >  public String[] getSwitchNameArray(String rn)
> >    {
> > ......returns string array
> > }
>
> > I think in resultCode I get 0 because I write
> > setResult(RESULT_OK,returnIntent);  inside onPause () method. Or there
> > is another problem? I had write that inside onPause bacause in this
> > activity I am calculating name of selected items. And I never knows
> > when user had finished selecting items. After writing code inside
> > onPause I know what item user had selected from list and I can pass
> > them to the calling activity.
>
> > I think better approach is to add one button means suppose user click
> > on save button then selected item will be sent to the calling
> > activity. Want your opinion? where should write code. If it doesn't
> > affect write inside onPause() then why I got 0 from resultCode.
>
> > --
> > You received this message because you are subscribed to the Google
> > Groups "Android Developers" group.
> > To post to this group, send email to [email protected]
> > To unsubscribe from this group, send email to
> > [email protected]<android-developers%[email protected]>
> > For more options, visit this group at
> >http://groups.google.com/group/android-developers?hl=en
>
>

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to