【问题标题】:How to inflate View inside of ViewHolder for RecyclerView如何在 ViewHolder 中为 RecyclerView 充气视图
【发布时间】:2018-05-21 03:22:19
【问题描述】:

我正在尝试在 ViewHolder 中为 RecyclerView 充气视图,但它不起作用。 如果有人就以下示例代码给我建议,我将不胜感激。

class MyProfileViewHolder(
    itemView: View,
    private val myProfileViewModel: MyProfileViewModel) : RecyclerView.ViewHolder(itemView) {

private val userImageView: ImageView = itemView.myProfileMainUserImageView
private val myProfileSelfIntroductionText: TextView = itemView.myProfileSelfIntroductionText
private val favoriteEmptyFrame: FrameLayout = itemView.favoriteEmptyFrame

fun bind() {
    // DefaultImage
    val url = myProfileViewModel.user.getProfileImageUrl(myProfileViewModel.selectedImageIndex, "medium")
    profileViewHelper.setProfileMainImage(
            userImageView,
            myProfileViewModel.user.getProfileImageUrl(myProfileViewModel.selectedImageIndex, "medium"),
            myProfileViewModel.user.gender
    )
    // Self introduction
    myProfileSelfIntroductionText.text = myProfileViewModel.user.description

    // favorite empty frame
    when(myProfileViewModel.emptyViewType) {
        MyProfileViewModel.EMPTY_VIEW_TYPE_FAVORITE -> {
            // it doesn't work
            LayoutInflater.from(itemView.context).inflate(R.layout.section_favorite_empty, favoriteEmptyFrame, false)
        }
    }
}

}

这是我在 Cacher 上尝试的示例代码,包括其他文件,例如 Adapter 和 xml。 https://snippets.cacher.io/snippet/e02fb192f90c21765e7e

【问题讨论】:

    标签: android android-layout android-recyclerview


    【解决方案1】:

    我找不到这样做的方法,在创建 viewHolder 之前需要有一个膨胀的布局。

    但您可以使用以下代码解决此限制:

    class MyProfileViewHolder(
        itemView: View) : RecyclerView.ViewHolder(itemView) {
    
    ...
    
    MyProfileViewHolder(LayoutInflater.from(context)
                        .inflate(R.layout.m_layout, container, false))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-28
      相关资源
      最近更新 更多