Android复杂的布局设计提醒

我想为Android仪表板活动实现复杂的布局,如下图所示。

在此处输入图像描述

对于某些单元格,应该像这样添加多个文本视图,例如:

在此处输入图像描述

这里将使用异步任务从Web服务加载一些文本视图的文本。 只能点击一个图像视图。
我想知道在Android中实现这种types的复杂布局的最佳方法是什么。 我试图使用带有lianearlayouts的线性布局来实现这一点,但它是一个巨大的混乱和很多复杂。 然后我尝试将tablelayout与lianearlayouts一起使用,但它也变得越来越复杂。 然后我想用线性布局的网格视图来做这个,但我很想知道如何做到这一点。
我还在学习阶段,我只是想知道实现这种布局的最佳方法是什么types的布局我应该使用哪里。 我不需要完整的实施。

提前致谢。

使用Android Percent Support Lib可以很容易地解决这些问题,

在此处输入图像描述

结帐要点: https : //gist.github.com/shekarrex/5458f697c02e5619b0e2

请参阅GridLyout,它将帮助您.. GridLayout和行/列跨度祸

http://www.techotopia.com/index.php/Working_with_the_Android_GridLayout_in_XML_Layout_Resources

更新:我们知道从API级别26弃用了百分比支持库ConstraintLayout是实现相同的平面xml结构的新方法。

更新了Github项目

更新样本:

     

已弃用任何人都需要一个简单的演示来使用百分比支持库。

代码和概念在这里。

       

WithIn styles.xml

   

Github项目在这里

复杂设计百分比

如果我需要实现这样的布局,我会把它分成3个部分:
1.截图中从顶部到红色TextView的一行。
2.左列从橙色“2 TextViews”到底部。
3.带有绿色和灰色TextView的右栏。

对于每个部分,您至少有3个选择:
1.如果部件有一些严重的逻辑,我会使用Fragments,因为它们有一个生命周期。
2.如果逻辑很小并且您不想在活动中实现所有内容,我会使用自定义视图 。
3.如果只想分割你的布局xml,请检查include标签。
4.您可以使用1 – 3的任何排列,并以适合您需要的不同方式拆分布局。

最好的方法是使用Fragmentsinclude标签添加其他xml布局