Josh, I have getViewTypeCount (2 here) & getItemViewType (0/text_row, 1/ icon_row) in my adapter so it knows about the two row types. ConvertView is set to the correct row type.
The question is how to correctly apply merge to rid of the LinearLayout in: * layout/icon_row.xml w/ <LinearLayout>/icon_row * layout/icon_text.xml w/ <Linearlayout>/icon_text If I simply replace <LinearLayout> with <merge> in above xml's, inflate will throw exception w/o a ViewGroup parent. So I need to pass in ViewGroup to my Adapter somehow. This may not be the case for merge but I would like to find out if it still can be done. Thanks. On Jun 22, 11:48 am, Josh Guilfoyle <[email protected]> wrote: > You definitely don't want to access the list directly from the > adapter. Instead for your design what you'd want to do is remove the > outer linear layout if you can and just have two separate XML files > with only 1 view each (text_row or icon_row). Then in your adapter > override the methods getItemViewType and getViewTypeCount. These > methods are provided for you to have two or more different types of > layouts for certain rows based. > > On Jun 22, 10:16 am, az9702 <[email protected]> wrote: > > > Hi, > > > I have a ListView with two types of custom views. It inflates > > "icon_row" view if a drawable exists or a "text_row" if not. > > > I came up w/ custom views for icon_row & text_row & include them in > > their XML like so : > > > //text_row.xml > > <LinearLayout ....> > > < com.test.android.ALS.text_row > > ... > > app:text1="..." > > app:textSize1=".." > > > > > /LinearLayout> > > > //icon_row.xml > > <LinearLayout ...> > > <com.test.android.ALS.icon_row > > ... > > app:imgSrc="..." > > > > > /LinearLayout> > > > I have another main.xml that defines the ListView which is set to an > > adpater. > > > In my adatper's getView (in separate class file), I will inflate: > > > if(convertView == null) { > > if(<no drawable>) { > > convertView = mInflater.inflate(R.layout.text_row. null); > > } else { > > convertView = mInflater.inflate(R.layout.icon_row, > > null); > > } > > } > > > Both of icon_row, text_row have a root LinearLayout that seem to be > > redundant. The row layouts can be directly attached ListView. This > > may be a case for "merge". > > > To use merge, I need a ViewGroup in inflate & that ViewGroup should be > > my ListView. > > > My question is how to obtain a reference to the ListView w/o making > > the adapter as an inner class to the main activity. > > > Thanks in advance. > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---

