Java 在tabFragment视图中实现搜索栏
您好,由于某种原因,我似乎无法让我的搜索小部件显示在我的选项卡碎片上方,尽管我危险地浏览了stack overflow和其他互联网论坛,但我觉得问题似乎出在我的XML上,尽管我看不出在哪里: 活动\u main.xmlJava 在tabFragment视图中实现搜索栏,java,android,android-layout,Java,Android,Android Layout,您好,由于某种原因,我似乎无法让我的搜索小部件显示在我的选项卡碎片上方,尽管我危险地浏览了stack overflow和其他互联网论坛,但我觉得问题似乎出在我的XML上,尽管我看不出在哪里: 活动\u main.xml <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/a
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout 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:id="@+id/main_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="com.lab1.ac01220.bloomv2.MainActivity">
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/appbar_padding_top"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:layout_weight="1"
android:background="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/AppTheme.PopupOverlay"
app:title="@string/app_name">
</android.support.v7.widget.Toolbar>
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.TabItem
android:id="@+id/tabItem"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/tab_text_1" />
<android.support.design.widget.TabItem
android:id="@+id/tabItem2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/tab_text_2" />
<android.support.design.widget.TabItem
android:id="@+id/tabItem3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/tab_text_3" />
</android.support.design.widget.TabLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</android.support.design.widget.CoordinatorLayout>
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.DayNight.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
</resources>
<menu 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"
tools:context="com.lab1.ac01220.bloomv2.MainActivity">
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:title="@string/action_settings"
app:showAsAction="never" />
<item android:id="@+id/action_search"
android:title="@string/searchHint"
android:icon="@drawable/ic_search"
app:showAsAction="always"
app:actionViewClass="android.support.v7.widget.SearchView" />
</menu>
根据以下文件:
必须返回true才能显示菜单;如果返回false,则不会显示
默认的super
实现将返回false
,因此必须显式地返回true代码>在此处显示您的菜单
此外,如果您提供自己的工具栏
来代替提供的操作栏
,则需要将其设置为支持操作栏
,以便以这种方式显示选项菜单。即:
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
您必须返回true代码>来自onCreateOptions菜单()
以显示您的菜单。如果您尚未将工具栏设置为“支持”ActionBar
,则需要将工具栏设置为“支持”ActionBar
,这样才能显示选项菜单。@MikeM。请将其添加为答案,以便我可以将其标记为正确:)
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);