如何设置不同的工具栏并隐藏片段中的上一个工具栏
How to set a different toolbar and hide previous toolbar in fragment
我正在尝试在我的片段中膨胀不同的工具栏。虽然我能够为不同的片段膨胀不同的工具栏问题是 MainActivity 工具栏我无法隐藏它我已经使用
(activity as AppCompatActivity).supportActionBar?.hide()
但它只隐藏片段工具栏,而不是 MainActivity 工具栏我想隐藏 MainActivity 工具栏。
我的代码
片段
class SearchFragment : Fragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
val view = inflater.inflate(R.layout.fragment_search, container, false)
val toolbar = view.findViewById<Toolbar>(R.id.toolbar_search)
(activity as AppCompatActivity).setSupportActionBar(toolbar)
setHasOptionsMenu(true)
// (activity as AppCompatActivity).supportActionBar?.hide()
return view
}
Xml
<androidx.coordinatorlayout.widget.CoordinatorLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="56dp"
app:titleTextColor="#000000"
app:title="MainActivity"
app:elevation="8dp" />
</com.google.android.material.appbar.AppBarLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
我相信 fragment 的工具栏是隐藏的,因为你将它添加到 activity 然后你隐藏它所以在添加 fragment 的工具栏之前尝试隐藏
val view = inflater.inflate(R.layout.fragment_search, container, false)
val toolbar = view.findViewById<Toolbar>(R.id.toolbar_search)
(activity as AppCompatActivity).supportActionBar?.hide()
(activity as AppCompatActivity).setSupportActionBar(toolbar)
setHasOptionsMenu(true)
我正在尝试在我的片段中膨胀不同的工具栏。虽然我能够为不同的片段膨胀不同的工具栏问题是 MainActivity 工具栏我无法隐藏它我已经使用
(activity as AppCompatActivity).supportActionBar?.hide()
但它只隐藏片段工具栏,而不是 MainActivity 工具栏我想隐藏 MainActivity 工具栏。
我的代码
片段
class SearchFragment : Fragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
val view = inflater.inflate(R.layout.fragment_search, container, false)
val toolbar = view.findViewById<Toolbar>(R.id.toolbar_search)
(activity as AppCompatActivity).setSupportActionBar(toolbar)
setHasOptionsMenu(true)
// (activity as AppCompatActivity).supportActionBar?.hide()
return view
}
Xml
<androidx.coordinatorlayout.widget.CoordinatorLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="56dp"
app:titleTextColor="#000000"
app:title="MainActivity"
app:elevation="8dp" />
</com.google.android.material.appbar.AppBarLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
我相信 fragment 的工具栏是隐藏的,因为你将它添加到 activity 然后你隐藏它所以在添加 fragment 的工具栏之前尝试隐藏
val view = inflater.inflate(R.layout.fragment_search, container, false)
val toolbar = view.findViewById<Toolbar>(R.id.toolbar_search)
(activity as AppCompatActivity).supportActionBar?.hide()
(activity as AppCompatActivity).setSupportActionBar(toolbar)
setHasOptionsMenu(true)