按待机和打开屏幕时,更改工具栏的标题不会更新

我的标题应该更新,当待机和返回。

class MainActivity : AppCompatActivity() { override fun setContentViewBinding(): ActivityMainBinding = DataBindingUtil.setContentView(this, R.layout.activity_main) override fun onCreate(savedInstanceState: Bundle?) { binding = setContentViewBinding() super.onCreate(savedInstanceState) } override fun onResume() { super.onResume() val newRandomNr = Random().nextInt(50) + 1 title = "new title " + newRandomNr } } 

的build.gradle

 apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' apply plugin: 'kotlin-kapt' 

activity_main.xml中

 <?xml version="1.0" encoding="utf-8"?> <layout xmlns:android="http://schemas.android.com/apk/res/android"> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent"> <include android:id="@+id/top_toolbar" layout="@layout/toolbar" /> </RelativeLayout> </layout> 

toolbar.xml

 <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.AppBarLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:fitsSystemWindows="true" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:clickable="true" android:elevation="@dimen/toolbar_elevation" app:titleTextColor="@android:color/white"> </android.support.v7.widget.Toolbar> </android.support.design.widget.AppBarLayout> 
  1. 打开应用程序,标题显示正确的随机数
  2. 按待机,再次打开屏幕。
  3. 方法onResume被触发,新的随机值,但标题不会更新。

显然,按下待机时标题不会更新。 使用对supportActionBar的引用可以解决问题。

  act.supportActionBar?.title = act.getString(R.string.title_messages)