我需要从我的房间数据库中通过后台线程获取一个Note()
对象,并将便笺的标题设置为我的活动标题,但是title = note.title
不起作用,并且我看到了我的应用程序名称在工具栏中。我也尝试过supportActionBar?.title
和toolbar.title
,但都没有解决问题。我确定数据库可以为我提供正确的数据,而且我不知道问题出在哪里。任何帮助表示赞赏。
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_show_note)
setSupportActionBar(toolbar)
supportActionBar?.setDisplayHomeAsUpEnabled(true)
}
override fun onResume() {
super.onResume()
intent.extras?.also {
val id = it.getInt(ID_EXTRA)
Thread(Runnable {
note = db.noteDao().getNote(id)
runOnUiThread {
title = note.title
tvShowNote.text = note.note
tvShowTime.text = note.time.format()
}
}).start()
}
}
答案 0 :(得分:1)
您必须设置类似这样的内容。
supportActionBar!!.title = title //your_title_put_here
在没有runOnUiThread的情况下是否尝试过相同的操作。
答案 1 :(得分:0)
setTitle是操作栏的方法,您需要使用操作栏的实例来设置其属性。将工具栏设置为支持操作栏后,尝试使用以下代码。
val actionBar = supportActionBar
actionBar!!.title = "your_title"