我想在卡片视图内的一行(水平)中显示多个文本视图(每个卡片的视图数量是动态的,从服务器获取)。为此,我在卡片视图中使用线性布局,如
<LinearLayout
android:id="@+id/llReader"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="10dp"
android:layout_marginLeft="10dp"
android:orientation="horizontal" >
</LinearLayout>
在内部适配器(我正在使用recyclelerview适配器)填充onBindViewHolder方法时,我这样做,
for (i=0;i<array.size();i++){ // arraysize is different for each card
//create a new texview
// set text of that textview accordingly
// add it to linear layout (ll.addview(tv)
}
然后我准备apk并测试它。所有卡都正确填充。到现在为止还挺好。
但是几次之后,当所有卡片都被填充时,我注意到所有线性布局合并,并且所有卡片都具有所有其他卡片的线性布局。可能是什么原因以及如何解决它?
P.S。最初我尝试使用单个文本视图而不是线性布局,并继续将文本添加到for循环中的字符串中,然后调用文本视图的setText方法。这很好,即它只显示与该特定卡有关的细节。但是现在我不能使用相同的,因为每个文本视图也有图像,所以新的文本视图将像(Image + someText)。如果有其他方法,请建议我使用线性布局。