25 марта 2012 г. 0:55 пользователь Justin Anderson <[email protected]> написал: >> Apen sorry i dint notice ur suggestion, no it's not about the name, >> hmm i think it's something wrong with the order of the blocks... > > > No, it IS about the name... Apen was correct (and that is what I was trying > to say before, but was REALLY tired so I apologize for the incoherent > replies). > > >> mNewDevicesArrayAdapter = new ArrayAdapter<String>(this, >> R.layout.textviewlayout); > > > That is incorrect... You should not be passing in an R.layout here... you > should be passing in an R.id
No. The two-argument constructor takes a *layout* id: https://github.com/android/platform_frameworks_base/blob/master/core/java/android/widget/ArrayAdapter.java#L96 and it's assumed that the layout consists of just one TextView at the root. https://github.com/android/platform_frameworks_base/blob/master/core/java/android/widget/ArrayAdapter.java#L378 So: res/layout/item_simple.xml: <?xml version="1.0" encoding="utf-8"?> <TextView .... /> and then: new ArrayAdapter(this, R.layout.item_simple) Constructor #2 takes a layout id and a view id: https://github.com/android/platform_frameworks_base/blob/master/core/java/android/widget/ArrayAdapter.java#L107 and uses findViewId with the last (third) parameter locate the text view within the layout: https://github.com/android/platform_frameworks_base/blob/master/core/java/android/widget/ArrayAdapter.java#L381 res/layout/item_complex: <?xml version="1.0" encoding="utf-8"?> <LinearLayout ... or something else > <TextView android:id="@+id/item_text_view .... /> <ImageView ... or something else /> </LinearLayout> and then new ArrayAdapter(this, R.layout.item_complex, R.id.item_text_view) -- K -- 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

