android - Fragments 中的工具栏标题

标签 android

当 Fragments 改变时,我如何改变 Toolbar 中的 Textview?我的工具栏位于 BaseActivity 中,因此我可以在所有 Activity 中使用。

<android.support.v7.widget.Toolbar
                android:id="@+id/toolbar"
                android:layout_width="match_parent"
                android:layout_height="?attr/actionBarSize"
                app:popupTheme="@style/AppTheme.PopupOverlay">

                <FrameLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent">

                    <TextView
                        android:id="@+id/toolbar_title"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center"
                        android:layout_marginBottom="4dp"
                        android:layout_marginLeft="20dp"
                        ndroid:layout_marginRight="attr/actionBarSize"
                        android:layout_marginTop="4dp"
                        android:textColor="@color/colorAccent2"
                        android:textSize="19sp"
                        tools:ignore="HardcodedText" />


                </FrameLayout>
            </android.support.v7.widget.Toolbar>

最佳答案

您可以使用这一行轻松更改标题:

((MyAppCompatBaseActivity)getActivity()).getSupportActionBar().setTitle("Hello World!");

编辑:

我刚刚看到您的 Toolbar 中有一个 TextView。因此,要在您的 BaseActivity 中设置标题,请执行以下操作:

public class BaseActivity extends AppCompatActivity {

    TextView textViewTitle;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        // Other Code
        textViewTitle = (TextView) findViewById(R.id.toolbar_title);
    }

    public void setTitle(String title) {
        textViewTitle.setText(title);
    }

}

然后在您的 Fragment 中执行此操作:

((BaseActivity)getActivity()).setTitle("Hello World!");

关于android - Fragments 中的工具栏标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38917577/

相关文章:

android - 如何在 Android 上制作 ListView 过滤器

android - 数据库更新协程完成后,设置 bool 标志

android - 带有 FragmentStatePagerAdapter 的 WebView 在调用 setCurrentItem 时变为空白

Android:在 Nougat 中截取整个 WebView 的屏幕截图(Android 7)

android - 为具有不同 TextSize 的 TextView 设置相同的高度

android 为整个项目禁用 lint "unused declaration"

java - 离开 SettingsActivity 时应用强制关闭

android - com.squareup.okhttp.HttpResponseCache无法解析符号 'HttpResponseCache'

android - 何时在 Fragment 中调用 initLoader?

android - Android是否支持跨应用文件访问