Android - ListViews inside tableLayout

前端 未结 3 1802
攒了一身酷
攒了一身酷 2021-01-27 11:54

I\'m trying to build and app that shows organized data so I\'m thinking that basically a TableLayout would be a good idea, just to keep them in rows, so I\'m wonder

相关标签:
3条回答
  • 2021-01-27 12:08

    In general I've seen the stronger warning:

    This LinearLayout layout or its RelativeLayout parent is useless

    when this is not the case. For example, this can happen if I've nested a linear layout inside a relative layout. The relative layout positions the linear layout exactly where I want it, the linear layout takes up space. Both are non-useless uses to me.

    0 讨论(0)
  • 2021-01-27 12:13

    1) it says possibly so avoid drawing conclusions, trust yourself young padawan! But yes, the parent looks useless to me too :)

    2) Using Table layout outside of your ListView wont change the rows' layout in the list, in case this is what you want to achieve.

    You might have seen this but the Developers page offers a really good tutorial that can help you create a good base for your ListView (this example uses a ListActivity). Then on you can modify the rows' layouts using TableLayout ...etc.

    0 讨论(0)
  • 2021-01-27 12:21

    so what i understand is that is not picking up the tablelayout. how can i fix this? is there another way to do this easly?

    Not quite, the renderer is taking account of the TableLayout but because the lint tool has detected that you have two views when you only need one (A LinearLayout and TableLayout) it is warning you that you should remove one of these layouts as it will boost performance while not effecting the functionality of the page.

    I will add, you have a TableLayout with just a single row. TableLayout's are designed to allow their contents to format their columns based upon all of their rows. With a single Row the TableLayout & Row together are acting as a LinearLayout:

    <LinearLayout>
        <LinearLayout>
            <ListView>
            <TextView>
    

    Since your TableLayout isn't adding any addition layout in that case it becomes obsolete and you will gain a resource boost from removing it and changing the orientation of LinearLayout to horizontal.

    If you're planning to add more TableRow's later, then you should instead remove the LinearLayout for the same reason - it will then become the view which is not adding extra information: your table layout will be entirely responsible for the layout so you might as well make it the parent of the layout file (remember to add xmlns:android="http://schemas.android.com/apk/res/android" attribute to it if you do.)

    0 讨论(0)
提交回复
热议问题