【发布时间】:2019-10-01 10:02:03
【问题描述】:
我想做一个安卓聊天应用。我为聊天部分做了一个简单的布局。我做了两个布局,我的信息和他们的信息。他们每个人只有一个文本视图。想象一下,现在我想为带有标题的图片添加布局。在这种情况下,我必须构建两个布局。一个用于我的消息,第二个用于传入消息或他们的消息。但是如果我对每条可能的消息都这样做,那么布局的数量就会增加,而且我的布局中也会出现很多重复的东西。
就像在这个布局中一样,你可以看到在我和他们的消息中有一个图像和一个标题,这两个布局有相似之处。我想制作带有图像和标题的布局,然后在我或他们的消息中使用它。在这种情况下,我可以轻松更新我的布局,并为每条可能的消息创建大量布局。最好的方法是什么,或者不可能或不好?
我知道我可以通过两种不同的方式重用布局。首先通过在布局中使用 include 关键字,第二个是膨胀布局。比如这样:
ConstraintLayout item = findViewById(R.id.main);
View child = getLayoutInflater().inflate(R.layout.item, null);
item.addView(child);
重用布局和防止创建略有不同的布局的最佳方法是什么?现有的聊天应用程序如何做到这一点?我正在使用回收站视图进行聊天布局。
【问题讨论】:
-
将 RV 用于多种视图类型。每种视图类型(您的文本、他们的文本、您的图像、他们的图像、bla bla bla)都将具有不同的视图类型和单独的布局。您可以像任何其他列表项一样在 RV 适配器中为它们充气
标签: android android-layout chat code-reuse