所以,我想要的是:定义一个组件,其中包括TextView-s和ImageView。这是一个项目,我想添加到(例如线性)布局,所以我可以显示所有自定义项目,我一个接一个地添加。 关键是,这些项目必须是可编辑的,因为数据库查询结果将定义其文本内容和图像。
答案 0 :(得分:1)
您的自定义组件本身应为ViewGroup
。您可以向其添加任意数量的TextView
和ImageView
,并通过其ID访问它们。
MyCustomViewGroup component = (MyCustomViewGroup)linearLayout.findViewById(...);
TextView textView1 = (TextView)component.findViewById(...);
ImageView imageView = (ImageView)component.findViewById(...);
答案 1 :(得分:0)
你可以去XML approach for defining your component。例如,您可以将组件定义为LinearLayout,然后将所需的所有元素(TextViews,ImageViews)添加到该布局中。
至于“可编辑”部分,只需为您的元素提供id属性即可
android:id="@+id/my_view"
;这样你就可以通过findViewById(R.id.my_view)
电话获得它们。
您将结果转换为您期望的任何View实现,然后使用查询中的解释结果更改其文本/内容/图像。