ActionBar 內部結構隨 Android 版本、廠商 ROM、主題樣式不同,**無公開 API 取得標題 TextView**。嘗試反射或遍歷視圖樹極易崩潰。
getSupportActionBar().setTitle("我的標題");
// 或 Toolbar
toolbar.setTitle("我的標題");
// styles.xml
<style name="MyActionBarTitle" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Title">
<item name="android:textColor">#FFFFFF</item>
<item name="android:textSize">18sp</item>
<item name="android:fontFamily">sans-serif-medium</item>
</style>
// 主題套用
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="actionBarTitleTextAppearance">@style/MyActionBarTitle</item>
</style>
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary">
<TextView
android:id="@+id/custom_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="自訂標題"
android:textColor="@android:color/white"
android:textSize="20sp" />
</androidx.appcompat.widget.Toolbar>
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
TextView customTitle = findViewById(R.id.custom_title);
// 完全控制 customTitle
findViewById(android.R.id.title) 或類似手段。setTitle,樣式用主題,複雜需求用 Toolbar 自訂佈局。