- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有没有一种方法可以只为保存我所有片段的主要 Activity 设置透明工具栏?
我需要在其他片段中显示工具栏,但在主宿主 Activity 中,我希望它通过按钮而不是彩色透明
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val navController = Navigation.findNavController(this, R.id.nav_host_fragment)
setupActionBar(navController)
}
private fun setupActionBar(navController: NavController) {
NavigationUI.setupActionBarWithNavController(this, navController)
}
override fun onSupportNavigateUp(): Boolean {
return Navigation.findNavController(this, R.id.nav_host_fragment).navigateUp()
|| super.onSupportNavigateUp()
}
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
MenuInflater(this).inflate(R.menu.menu, menu)
menu!!.findItem(R.id.eventFragment)?.isVisible = false
return super.onCreateOptionsMenu(menu)
}
}
最佳答案
处理操作栏/工具栏的最佳方法是使用Theme.NoActionBar,然后自行创建一个,并将背景色设置为透明。
这朵云看起来像这样:
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ui.settings.SettingsActivity">
<com.google.android.material.appbar.AppBarLayout
android:id="@+id/appBarLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/settingsToolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@android:color/transparent" />
</com.google.android.material.appbar.AppBarLayout>
<fragment
android:id="@+id/nav_host_fragment"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_margin="10dp"
app:defaultNavHost="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/appBarLayout"
app:navGraph="@navigation/settings_navigation" />
关于android - NavigationComponents透明工具栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59460428/
我刚刚使用一个新项目实现了导航,但我的抽屉导航并没有膨胀每个导航 fragment ,它只是在我单击选项时显示第一个导航 fragment public class DisplayScreen2 ex
我在项目中使用导航组件。尝试设置来自回收器的共享元素转换。并且在第二个 fragment 中输入过渡效果很好,但是当我返回到第一个 fragment 时 - 没有返回过渡。 我试图像在第二个 frag
所以,这很奇怪,我有两种方法可以从 Fragment A 到 Fragment B 第一个来自fab button click private fun navigateToCreateTopics()
我正在实现 NavigationComponent 与 BottomNavigationView 相结合的过程中,我注意到工具栏中显示了所有 fragment 目的地的后退箭头,但指定为 startD
是否可以通过 NavigationContoller 在 BottomNavigation 控制的 Fragment 之间传递 Parcelable 对象/参数? 这是我的应用程序的流程,用户登录应用
找了一个小时左右的导航组件库最新版本,没有成功,请问如何快速找到我需要的包版本? 谢谢。 最佳答案 如果您已阅读 the documentation ,它说: belongs to Maven art
我刚刚看到 onActivityCreated() 将来会被弃用。我尝试实现 LifecycleOwner 和 LifecycleObserver 模式,但我不太确定我在这里做什么。 我正在使用 Na
我是一名优秀的程序员,十分优秀!