我有ActionBarActivityNavigationDrawer,并使用support_v7 Toolbar作为ActionBar.在我的一个片段中,工具栏具有自定义视图.在其他片段中,Toolbar应该显示标题.

如何从片段中获得Toolbar个定制实例?我可以用getActivity().getActionBar()获得ActionBar,但如果我为这个实例调用setTitle() ActionBar,它什么也做不了.

UPD:

在我的情况下

((ActionBarActivity) getActivity()).getSupportActionBar().setTitle();

(正如Engineer13先生所说)第一次创建片段时不要工作,因为我从onHiddenChanged()调用它.现在我再向onCreateView()添加一个,它工作得很好.

推荐答案

你需要先将你的活动从getActivity()投射到AppCompatActivity.下面是一个例子:

((AppCompatActivity) getActivity()).getSupportActionBar().setTitle();

必须对其进行强制转换的原因是,getActivity()返回FragmentActivity,而您需要AppCompatActivity

在Kotlin :

(activity as AppCompatActivity).supportActionBar?.title = "My Title"

Android相关问答推荐

有没有办法知道每台安卓设备上的通知限制?

如何消除脚手架和顶杆(material 3)更改 colored颜色 时的延迟?

Android和Rust,OpenSSL交叉编译在ARM V7上链接失败

如何将Unicode符号作为文本居中放置在布局中的按钮(Android XML)中?

如何使用进度条和返回函数进行API调用,同时在Android上使用Kotlin保持高效?

可以';t将数据插入房间数据库

Camera2 将图像从 ImageReader 传递到 MediaRecorder

Android Jetpack Compose 电视焦点恢复

如何删除房间数据库?

在模块 jetified-kotlin-stdlib-1.8.10 中发现重复的类 kotlin.random.jdk8,带有启动基准

未找到 com.android.tools.build:gradle:7.4.0 的匹配变体

在 react native 中设置 react-native-paper 组件的样式

为片段设置主题

如何在 Compose 中使用合并的单元格创建网格视图?

如何将设备屏幕位置转换为发送事件位置?

在jetpack compose中将图像添加到脚手架顶部栏

Kotlin Compose forEach 中的负间距

如何使用文件提供程序将视频从一个应用程序共享到另一个应用程序?

如何使伴奏导航 BottomSheet 完全展开?

为android中的每种风格替换一个XML文件