Warning: This can be replaced with a tag

前端 未结 4 1948
陌清茗
陌清茗 2021-02-05 08:58

I have a FrameLayout that contains a TextView and two LinearLayouts:



        
4条回答
  •  感情败类
    2021-02-05 09:07

    To understand this, you need to understand how layouts are inflated and placed.

    Let's say for example, you have an activity and this is the layout xml you use. Here is what the layout of the activity looks before you put your layout file.

     // This is the window
         // This is activity
        
    
    

    There might be few other layers depending on the device/OS.

    Now when you inflate your layout file and put it in, this is how it will look.

     // This is the window
         // This is activity
                //A textview and 2 linearlayouts
        
    
    

    Do you see the FrameLayout inside the other FrameLayout? It is redundant to have that since it does not add much value. To optimize, you can replace your outer FrameLayout with the tag. This is what it will look like.

     // This is the window
         // This is activity
                //A textview and 2 linearlayouts
        
    
    

    Notice how there is no extra FrameLayout. Instead, it is just merged with the FrameLayout of the activity. Whenever you can, you should use . This doesn't only apply to FrameLayouts. You can read more about it here. http://developer.android.com/training/improving-layouts/reusing-layouts.html#Merge

    Hope this helps.

提交回复
热议问题