2016-08-02 29 views
0

Ich habe eine ActionBar und eine ToolBar in meiner Aktivität. Die Actionbar ist oben auf dem Bildschirm und ToolBar ist direkt unter der ActiconBar. Ich möchte diese Situation ins Gegenteil ändern. Ich möchte ToolBar oben auf dem Bildschirm und ActionBar unten sein. Gibt es eine Möglichkeit, dies zu tun?Put ToolBar über ActionBar android

Überprüfen Sie die Layout-Datei unter:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 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" 
tools:context="hu.redbuttonebb.endi.fragmentek20.SearchActivity" 
android:background="@drawable/background" 
android:id="@+id/searchvagyok"> 

<include 
    android:id="@+id/toolbar2" 
    layout="@layout/toolbar2" 
    android:title="xxxxxxx"> 
</include> 

toolbar2.xml

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
android:elevation="4dp" 
android:background="#808080" 
app:titleTextColor="#FFFFFF" 
android:icon="@android:drawable/ic_menu_search"> 

manifest.xml

<activity android:name=".SearchActivity" 
     android:uiOptions="splitActionBarWhenNarrow" 
     android:screenOrientation="portrait" 
     android:theme="@style/Theme.AppCompat"> 

    </activity> 

Activity.java

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    getWindow().requestFeature(Window.FEATURE_ACTION_BAR); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
      WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_search2); 

    ActionBar ab = getSupportActionBar(); 
    ab.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#FFD700"))); 
    ab.setTitle("5gdgdgddf"); 

    mToolbar2 = (Toolbar) findViewById(R.id.toolbar2); 
    } 
+0

ToolBar der Ersatz von Action-Bar ist, frage ich mich, wie du es übereinander legen könntest. – LvN

+0

Die Symbolleiste hat ihren Zweck und der Zweck ist es, actionBar zu ersetzen, wenn Sie ein nicht-standardmäßiges Verhalten benötigen, so dass die einzige Methode, die Sie aufrufen sollten, ist setSupportActionBar (toolbar); Wenn Sie eine benutzerdefinierte Ansicht haben möchten - setzen Sie sie auf Toolbar –

+0

Ich hätte gerne eine Aktionsleiste, um den Titel der Aktivität zu schreiben, und eine unten für die Suche. –

Antwort

0

Zuerst Sie der ActionBar loswerden sollte, wie @LvN sagte, ist die Symbolleiste der Ersatz des ActionBar.

Zweitens könnte man zwei Symbolleiste haben, übereinander, und in der Aktivität stellen Sie die untere der „Aktionsleiste“ mit setsupportactionbar für sein()

+0

@ J.Doe Sie sollten diese Antwort überprüfen – LvN

+0

Vielen Dank! Es funktioniert –