2014-11-03 62 views
0

我有具有的FrameLayout和内部,有一个工具栏的Android l支持库工具栏下显示的看法

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/container" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context=".MainActivity" 
tools:ignore="MergeRootFrame" > 
<android.support.v7.widget.Toolbar 
    android:id = "@+id/toolbar" 
    android:layout_height="wrap_content" 
    android:layout_width="match_parent" 
    android:minHeight="?attr/actionBarSize" 
    android:background="?attr/colorPrimary" /> 
</FrameLayout> 

里面我mainactivity.java,我有这个

public class MainActivity extends ActionBarActivity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    if (savedInstanceState == null) { 
     getFragmentManager().beginTransaction() 
       .add(R.id.container, new PlaceholderFragment()) 
       .commit(); 
    } 

    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 

} 

一个mainactivity.xml基于这里的教程http://android-developers.blogspot.com/2014/10/appcompat-v21-material-design-for-pre.html,我应该有一个自定义的工具栏作为一个操作栏。但是,出现的工具栏出现在我添加到块中的片段下。工具栏应该出现在它们上方并向下移动,但现在视图覆盖了操作栏工具栏。这是一个小故障还是我忘了什么?这实际上以前工作,但由于某种原因现在被打破。

回答

1

Toolbar需要是将要举办的Fragment像这样的FrameLayout之外:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 

    <android.support.v7.widget.Toolbar 
     android:id = "@+id/toolbar" 
     android:layout_height="wrap_content" 
     android:layout_width="match_parent" 
     android:minHeight="?attr/actionBarSize" 
     android:background="?attr/colorPrimary" /> 

    <FrameLayout 
     android:id="@+id/container" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     tools:context=".MainActivity" 
     tools:ignore="MergeRootFrame" > 

     </FrameLayout> 
</LinearLayout> 
+0

感谢完美的工作! – user2154475 2015-01-09 01:38:55