I'm writing a horizontal tv-view, similar to the ones you know form tivo systems and similar. For each channel there is a row with the programmes for the next 6 hours or so, with a width proportional with their play time.
My idea is to write a custom widget for each row, and stack these on top of each other. This should allow me to load the data incrementally, rather than using one big custom view. I will however still need forward/backward buttons at the top of the page that update all rows when clicked.
Now I'm unsure whether I should place these Views in a ListView or a LinearLayout.
I have collected the following pros and cons:
- ListView
- Pros
- Memory efficient - Recycles hidden Views
- Seems to be used by everyone, in the Android community, for anything.
- It might be easier to make it lazy, when updating the rows, and thus require less CPU.
- Cons
- Overkill - I won't be using most of the features it has to offer
- It may be slightly more difficult to attach the clickListeners.
- Pros
- LinearLayout
- Pros
- Simple to use. Does what you'd expect.
- Cons
- I haven't seen it used anywhere for long lists.
- Perhaps it is slower?
- Pros
The "Seems to be used by everyone" argument for ListView also includes t开发者_高级运维he "Master" Twitter app, which Google uses to show off "Good Android design". They also don't seem to be using most of its features.
Do you have any experience with this kind of work? Are there any recommendations I've missed when reading through the docs?
That schedule looks similar to the Google IO 2010 app. You can checkout their code and see how they have done it.
I ended up using a custom widget. I still don't know which of the mentioned is most effective though.
精彩评论