android - 如何在 kotlin、android 应用程序中将 arrayList 从适配器传递到具有意图的新活动?
问题描述
我是制作应用程序的新手。我想将数据从适配器传递到有意图的新活动。我想转移 PastNotesActivity,但它不起作用。因为 oldTitleName 向我显示错误:找到字符串,需要可编辑。我该如何解决?
class NoteAdapter(private var titleText: ArrayList<String>, private var image: ArrayList<String>) : RecyclerView.Adapter<NoteAdapter.ViewHolder>() {
inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
val itemTitle : TextView = itemView.findViewById(R.id.recyclerTitleText)
val itemImage : ImageView = itemView.findViewById(R.id.recyclerImage)
init {
itemView.setOnClickListener { v: View ->
// Toast.makeText(itemView.context,"You clicked on item # ${position + 1}", Toast.LENGTH_SHORT).show()
val intent = Intent(itemView.context, PastNotesActivity::class.java)
intent.putExtra("oldTitle", titleText[position])
itemView.context.startActivity(intent)
}
}
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val v = LayoutInflater.from(parent.context).inflate(R.layout.recycler_row, parent, false)
return ViewHolder(v)
}
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
holder.itemTitle.text = titleText[position]
Picasso.get().load(image[position]).into(holder.itemImage)
}
override fun getItemCount(): Int {
return titleText.size
}
}
这是 PastNotesActivity,oldTitleName 向我显示错误:找到字符串,需要可编辑。我该如何解决?
class PastNotesActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_past_notes)
val intent = intent
val oldTitleName = intent.getStringExtra("oldTitle")
pastTitleText.text = oldTitleName
val navBarTitle = intent.getStringExtra("oldTitle")
supportActionBar?.title = navBarTitle
}
}
解决方案
假设您正在将项目的文本从您的 recyclerView 传递到所需活动的 textView。
编码这个...
val intent = Intent(itemView.context, PastNotesActivity::class.java)
intent.putExtra("sampledText", "test123")
并在您想要的活动中编码...
val textFromIntent = intent.getStringExtra("sampledText")
textView.text = textFromintent
推荐阅读
- docker - 使用 Fluentd 进行 Docker 日志记录,我无法解析我想要的内容
- javascript - 如何在pdf中使用html css生成同一张表
- c++ - 从用户那里获取未知数量的数字,并通过使用动态分配的内存来存储这些值来获取这些数字的平均值
- google-apps-script - 如果我使用的是 Google Oauth,是否有一种简单的方法可以查看已通过身份验证的用户列表?
- css - 如何解决 CSS 过渡语法错误?
- r - R根据同一列中的前一个单元格值生成一个单元格值
- javascript - 如何打开 768px 的 A TAB?
- javascript - 我怎样才能无限点击我的按钮,因为在我点击按钮后它不再起作用
- python - 在 scipy.minimize 中具有多个返回值作为输入的函数
- vba - VBA 隐藏行计算事件