2015-09-23 3 views
-1

Я хочу показать два видения вида текста на панели инструментов. Если одно текстовое представление действует как заголовок, а другое - подзаголовок, который должен быть крайним справа от виджета панели инструментов.Как разместить два текстовых вида в панели инструментов?

Вот код xml, который я сделал для отображения двух текстовых видов слева, а другой справа.

<?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/apk/res-auto" 
    android:id="@+id/toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="?attr/actionBarSize" 
    android:background="@color/tool_bar_color" 
    app:layout_scrollFlags="scroll|enterAlways" 
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
    app:titleTextAppearance="@style/AppTheme.Toolbar.Title"> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:gravity="start|center" 
     android:textSize="20sp" 
     android:textColor="@color/white" 
     android:layout_gravity="center" 
     android:textStyle="bold" 
     android:text="Hello" 
     android:singleLine="true" 
     android:id="@+id/toolbar_title" /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:gravity="end|center" 
     android:textSize="15sp" 
     android:textColor="@color/white" 
     android:layout_gravity="center" 
     android:textStyle="bold" 
     android:text="India Hello" 
     android:singleLine="true" 
     android:id="@+id/toolbar_right_subtitle" /> 
</android.support.v7.widget.Toolbar> 

Я не получил желаемый результат после размещения двух виджетов вида текста внутри панели инструментов. Как я могу выполнить желаемый результат отображения двух виджетов вида просмотра, один слева и другой справа?

+0

Вы добавили это в 'OnCreate()' -> 'панели инструментов Toolbar = (Панель инструментов) findViewById (R.id.toolbar); setSupportActionBar (панель инструментов); ' –

+0

Да, я добавил. – Seenu69

ответ

0

Это код, который я в конечном счете используется, адаптировано из the example given by Gunaseelan:

<android.support.v7.widget.Toolbar 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="?attr/actionBarSize" 
    android:background="@color/tool_bar_color" 
    app:layout_scrollFlags="scroll|enterAlways" 
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
    app:titleTextAppearance="@style/AppTheme.Toolbar.Title"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="horizontal" > 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:gravity="start|center" 
     android:textSize="20sp" 
     android:textColor="@color/white" 
     android:layout_gravity="center" 
     android:textStyle="bold" 
     android:layout_weight="1" 
     android:singleLine="true" 
     android:id="@+id/toolbar_title" /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:gravity="end|center" 
     android:textSize="12sp" 
     android:layout_weight="1" 
     android:textColor="@color/white" 
     android:layout_gravity="center" 
     android:visibility="gone" 
     android:layout_marginRight="10dp" 
     android:singleLine="true" 
     android:id="@+id/toolbar_right_subtitle" /> 

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

Вы можете использовать LinearLayout следующим образом. А также поменяйте layout_width:"match_parent" на номер layout_width="wrap_content" для вашего TextView.

<?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/apk/res-auto" 
    android:id="@+id/toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="?attr/actionBarSize" 
    android:background="@color/tool_bar_color" 
    app:layout_scrollFlags="scroll|enterAlways" 
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
    app:titleTextAppearance="@style/AppTheme.Toolbar.Title"> 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:orientation="horizontal"> 

     <TextView 
      android:id="@+id/toolbar_title" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:layout_gravity="center" 
      android:gravity="start|center" 
      android:singleLine="true" 
      android:text="Hello" 
      android:textColor="@color/white" 
      android:textSize="20sp" 
      android:textStyle="bold" /> 

     <TextView 
      android:id="@+id/toolbar_right_subtitle" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:layout_gravity="center" 
      android:gravity="end|center" 
      android:singleLine="true" 
      android:text="India Hello" 
      android:textColor="@color/white" 
      android:textSize="15sp" 
      android:textStyle="bold" /> 
    </LinearLayout> 
</android.support.v7.widget.Toolbar> 
+0

Это сработало, но были некоторые проблемы. – Seenu69

+0

Я поместил макет для обоих текстовых просмотров и сделал ширину textviews match_parent. – Seenu69

0

Проверьте ширину и высоту TextViews, попробуйте установить wrap_content it.

Смежные вопросы