【发布时间】:2021-06-12 06:58:20
【问题描述】:
第二个活动
类 BookDescription : AppCompatActivity() { 覆盖 fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_book_description)
var books = intent.getParcelableExtra("String") as Book Glide.with(this).load(books.imageUrl).into(bookImg1) nameTxt1.text = books.name autorTxt1.text = books.name } }适配器类
类适配器(私有 val 上下文:上下文): RecyclerView.Adapter
() { private var datalist = mutableListOf<Book>() fun setListdata(data: MutableList<Book>){ datalist = data } inner class Holder(itemView : View) : RecyclerView.ViewHolder(itemView){ fun bindView(book: Book){ Glide.with(context).load(book.imageUrl).into(itemView.bookImg) itemView.nameTxt.text = book.name itemView.autorTxt.text= book.writer itemView.bookImg.setOnClickListener( View.OnClickListener { val intent = Intent(context, BookDescription::class.java) intent.putExtra("jbg", book) context.startActivity(intent) } ) } } override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): Holder { val view = LayoutInflater.from(context).inflate(R.layout.book_format, parent,假) 返回持有人(查看) }
override fun onBindViewHolder(holder: Holder, position: Int) { val book = datalist[position] holder.bindView(book) } override fun getItemCount(): Int { return if (datalist.size> 0){ datalist.size }else{ 0 } } }主要活动
类 MainActivity : AppCompatActivity() {
private lateinit var adapter : Adapter private val viewModel by lazy { ViewModelProviders.of(this).get(MainViewModel::class.java)} override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) adapter = Adapter(this) recycle.layoutManager = GridLayoutManager(this,2) recycle.adapter = adapter observerData() } fun observerData(){ viewModel.fetchUserData().observe(this,Observer{ adapter.setListdata(it) adapter.notifyDataSetChanged() }) }}
课本
@Parcelize 数据类 Book(val imageUrl:String="URL IImage", val name:String = "纳粹 knjige", val writer:String="Pisac knjige") :Parcelable!
- *[Logcat]**(https://i.stack.imgur.com/Wnt2O.jpg)
【问题讨论】:
标签: android firebase kotlin android-recyclerview