在Android中的导航抽屉中显示的两个工具栏

时间:2015-07-14 07:26:23

标签: android android-fragments android-toolbar

我正在尝试在通过ToolBar连接的Fragment中显示特定的NavigationDrawer

NavigationDrawer延长了AppCompatActivity这有一个特定的ToolBar正确显示。

现在我想要显示另一个下拉的工具栏等。当我点击Fragment时,这个也很好但是使用了旧的工具栏。如何隐藏显示旧版本的Toolbar

请参阅下面的快照:

enter image description here

如上所述而不是工具栏标题我希望 Rediff / Dropdown 工具栏出现在那里?

那么如何隐藏旧的ToolBar并显示新的<?xml version="1.0" encoding="utf-8"?> <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/tools" android:id="@+id/toolbar" style="@style/ActionBar" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/backgroundcolor" android:minHeight="?attr/actionBarSize" app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" > <Spinner android:id="@+id/spinner" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </android.support.v7.widget.Toolbar> ? 带有微调器的工具栏:

mToolbar = (Toolbar) rootView.findViewById(R.id.toolbar);

        if (hideToolBar)
        {
            ((AppCompatActivity)getActivity()).getSupportActionBar().hide();
        }
        else
        {
            ((AppCompatActivity)getActivity()).getSupportActionBar().show();
        }


        if (mToolbar != null)
        {
            ((AppCompatActivity) getActivity()).setSupportActionBar(mToolbar);
            ((AppCompatActivity) getActivity()).getSupportActionBar().setDisplayShowTitleEnabled(false);
        }

        navSpinner = new ArrayList<SpinnerNavItem>();
        navSpinner.add(new SpinnerNavItem(getResources().getString(R.string.all)));
        navSpinner.add(new SpinnerNavItem(getResources().getString(R.string.week)));
        navSpinner.add(new SpinnerNavItem(getResources().getString(R.string.month)));

        adapter = new NavigationAdapter(getActivity(),  navSpinner);
        mSpinner = (Spinner) rootView.findViewById(R.id.spinner);
        mSpinner.setAdapter(adapter);
        mSpinner.setOnItemSelectedListener(this);

以下是片段中的内容:

@classes  = Class.includes(:student_classes).where(:employee_id => current_employee.id)
  @students = {}

    unless @classes.blank?
      @classes.each { |class|
        unless class.student_classes.blank?
          class.student_classes.each { |std|
            @students[std.student.id] = std.student.name
          }
        end
      }
    end

1 个答案:

答案 0 :(得分:1)

ToolBar

使用相同的Activity
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/tools"
    android:id="@+id/toolbar"
    style="@style/ActionBar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/backgroundcolor"
    android:minHeight="?attr/actionBarSize"
    app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" >

    <Spinner
        android:id="@+id/spinner"
        android:visibility="GONE"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

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

Activity getReference to Spinner

当你发起Fragment时,Spinner 可见/已经

getActivity().spinnerInMainActivity.setVisibility(View.VISIBLE);