Daniel Thanks for your help. I will go with some tutorials. And if again suppose face problem I will be back. Anyway Thanks.
On May 25, 3:06 pm, Daniel Drozdzewski <[email protected]> wrote: > Pramod, > > You have to look at few things: > - List.contains() will tell you whether the reference to YourObject > instance is held by the list > - YourObject.equals() is used by List.contains() to answer *contains?* > question > > In your code, you don't have YourObject, that holds the model. In your > case it would be Employee class. > > List > interface:http://download.oracle.com/javase/tutorial/collections/interfaces/lis... > hash and > equals:http://www.ibm.com/developerworks/java/library/j-jtp05273/index.html > > You are into problems with Java not Andoid per se now, so not this > list I'm afraid. > > > > On Wed, May 25, 2011 at 10:43 AM, pramod.deore <[email protected]> > wrote: > > Still I am confused How I will check whether that list contains > > particular EmpId number or not? Means if there is no record for that > > particular empId then I am going to create new row but if it is > > present then I will only update that particulars row's value. > > > On May 25, 2:27 pm, Daniel Drozdzewski <[email protected]> > > wrote: > >> Pramod, > > >> you are creating new ArrayList that backs new SimpleAdapter every time > >> you receive an update, hence all there is to display is only what came > >> with the update. Activity should have one Adapter per ListView and > >> both of those should not be re-created, but created once and the > >> updated, when needed. > > >> Your ListView and Adapter are used wrongly. > > >> Please read tutorials on both of those. > > >> On Wed, May 25, 2011 at 9:46 AM, pramod.deore <[email protected]> > >> wrote: > >> > Yes Daniel I will try some sample code side by side but it will be > >> > great if you help to solve this tragidy. Look at my code: > > >> > private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() > >> > { > >> > @Override > >> > public void onReceive(Context context, Intent intent) > >> > { > >> > String res = intent.getStringExtra("Response"); > >> > System.out.println > >> > ("***********************************"); > >> > System.out.println (res); > > >> > if (res.length() == 0) > >> > { > >> > //Response has not changed > >> > System.out.println("value is > >> > null................."); > >> > } > > >> > else > >> > { > >> > String delims = "\\^"; > > >> > tokens = res.split(delims); > > >> > for (int i=0;i<tokens.length;i++) > >> > { > >> > System.out.println("At "+i+" Value is > >> > "+tokens[i]); > >> > } > > >> > if (tokens[1].equalsIgnoreCase("1")) > > >> > { > > >> > //write code for empId is exist already or not? > >> > If exist then > >> > update row else create new row > >> > showList(); > > >> > } > > >> > else > >> > { > >> > //Don't this record to listview > >> > } > >> > } > > >> > } > >> > }; > > >> > public void showList() > >> > { > > >> > ArrayList<HashMap<String, String>> mylist = new > >> > ArrayList<HashMap<String, String>>(); > >> > HashMap<String, String> map = new HashMap<String, > >> > String>(); > >> > map.put("EmpId", tokens[2]); > >> > map.put("Name", tokens[4]); > >> > map.put("MobNo", tokens[5]); > > >> > mylist.add(map); > >> > // ... > >> > SimpleAdapter mSchedule = new SimpleAdapter(this, > >> > mylist, > >> > R.layout.listcolumns, > >> > new String[] {"EmpId", "Name", > >> > "MobNo"}, new int[] > >> > {R.id.EmpId, R.id.Name, R.id.MobNo}); > >> > list.setAdapter(mSchedule); > >> > } > > >> > Now using this code listview updated continously but it shows only one > >> > updated record. Means suppose first record is like: > > >> > EmpId EmpName MobNo City ..... Gender > > >> > 1 Pramod 789 Nasik M > > >> > and suppose server send second record then first record is gone and > >> > shows only one record as: > > >> > EmpId EmpName MobNo City ..... Gender > > >> > 1 1 Tom 456 NY M > > >> > On May 25, 1:29 pm, Daniel Drozdzewski <[email protected]> > >> > wrote: > >> >> Pramod, > > >> >> You have to read up on ListView and some Adapter that backs the > >> >> ListView providing it with data. > > >> >> When you receive new set of data to be displayed or your data has > >> >> changed, you call BaseAdapter.notifyDataSetChanged() to notify the > >> >> associated ListView to redraw all visible items. > > >> >> ListView and Adapter are powerful, hence not easy to grasp at the > >> >> beginning, so you have to go through some tutorial first, if you want > >> >> to use them. > > >> >> On Wed, May 25, 2011 at 9:18 AM, pramod.deore > >> >> <[email protected]> wrote: > >> >> > Hi actually I am getting a string with some delimilater. Now using > >> >> > split() I am split that response. after spliting I am getting string > >> >> > array of size 40. I am not going to display all 40 fields. I will show > >> >> > near about 10 fields. > > >> >> > Once again let me explain what I want: > > >> >> > Using socket connection I am receiving response from server. I want to > >> >> > display this response in list. This list contains say 10 columns. > >> >> > Suppose first two records as > > >> >> > EmpId EmpName MobNo City ..... Gender > > >> >> > 1 Pramod 789 Nasik M > >> >> > 1 1 Tom 456 NY M > > >> >> > Now suppose next record again for EmpId 1 then other fields will > >> >> > change and it will be: > > >> >> > EmpId EmpName MobNo City ..... Gender > > >> >> > 1 Deore 789 Nasik M > >> >> > 1 1 Tom 456 NY M > > >> >> > Now suppose server send again some data with EmpId which is not exist > >> >> > above then it must have to add this new record.And it will be > > >> >> > EmpId EmpName MobNo City ..... Gender > > >> >> > 1 Deore 789 Nasik M > >> >> > 1 1 Tom 456 NY M > >> >> > 45 Rob 123 XYZ M > > >> >> > Now how to achieve this? > > >> >> > On May 25, 12:33 pm, Nikolay Elenkov <[email protected]> > >> >> > wrote: > >> >> >> On Wed, May 25, 2011 at 4:15 PM, pramod.deore > >> >> >> <[email protected]> wrote: > > >> >> >> > On May 25, 12:08 pm, Nikolay Elenkov <[email protected]> > >> >> >> > wrote: > >> >> >> >> On Wed, May 25, 2011 at 4:01 PM, pramod.deore > >> >> >> >> <[email protected]> wrote: > >> >> >> >> > Hi Ravi thanks for reply. actually it will becomes more > >> >> >> >> > complicated. > >> >> >> >> > Because server is sending data 2-3 times within a second And it > >> >> >> >> > will > >> >> >> >> > not be good idea to store data such a frequently. > > >> >> >> >> > Can somebody please provide me a guideline How I can check > >> >> >> >> > whether > >> >> >> >> > some key (here Name ) is already exist in listview? > > >> >> >> >> If you don't have much data to deal with it, it might be easier to > >> >> >> >> just replace everything and re-display. It doesn't really matter > >> >> >> >> what exactly changed. > > >> >> >> > Actually I am dealing with huge data. In above code just show a > >> >> >> > sample > >> >> >> > of three fields but there are more than 40 fields. > > >> >> >> Why is top-posting the norm on this list? Please write your reply > >> >> >> *below* > >> >> >> the previous one, so it reads like a conversation. Trimming also > >> >> >> helps. > > >> >> >> How are you going to display 40 fields in a ListView? It doesn't > >> >> >> really matter > >> >> >> though, you usually care if a particular row/record changed and > >> >> >> update/replace > >> >> >> the whole record in your model/adapter. If you want to be able > >> >> >> replace a > >> >> >> particular record, use some key (e.g., the employee ID) to search > >> >> >> for it, > >> >> >> and update/replace it.- Hide quoted text - > > >> >> >> - Show quoted text - > > >> >> > -- > >> >> > 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 > > >> >> -- > >> >> Daniel Drozdzewski- Hide quoted text - > > >> >> - Show quoted text - > > >> > -- > >> > 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 > > >> -- > >> Daniel Drozdzewski- Hide quoted text - > > >> - Show quoted text - > > ... > > read more »- Hide quoted text - > > - Show quoted text - -- 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

