2016-08-21 2 views
0

Я создал ScrollingActivity (активность шаблона для Android Studio). Вы можете увидеть поведение в этом коротком видео videoКак заставить мою панель инструментов отображать полный титл в двух строках вместо отображения «...»

Я видел несколько вопросов, подобных этому, и ответ на них заключался в том, чтобы на панели инструментов отобразилось текстовое изображение, чтобы отобразить две строки. Я попробовал, но проблема в том, что я теряю поведение панели прокрутки (что вы можете видеть в видео).

Вот мой код, спасибо!

<android.support.design.widget.AppBarLayout 
    android:id="@+id/app_bar" 
    android:layout_width="match_parent" 
    android:layout_height="@dimen/app_bar_height" 
    android:fitsSystemWindows="true" 
    android:theme="@style/AppTheme.AppBarOverlay"> 

    <android.support.design.widget.CollapsingToolbarLayout 
     android:id="@+id/toolbar_layout" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:fitsSystemWindows="true" 
     app:contentScrim="?attr/colorPrimary" 
     app:layout_scrollFlags="scroll|exitUntilCollapsed"> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar" 
      app:navigationIcon="@drawable/ic_navigation_back" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      app:layout_collapseMode="pin" 
      app:popupTheme="@style/AppTheme.PopupOverlay" > 

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

    </android.support.design.widget.CollapsingToolbarLayout> 

</android.support.design.widget.AppBarLayout> 

<include layout="@layout/content_scrolling" /> 

<android.support.design.widget.FloatingActionButton 
    android:id="@+id/fab" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_margin="@dimen/fab_margin" 
    android:src="@android:drawable/ic_dialog_email" 
    app:layout_anchor="@id/app_bar" 
    app:layout_anchorGravity="bottom|end" /> 

public class ScrollingActivity extends AppCompatActivity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_scrolling); 

    Bundle b = getIntent().getExtras(); 

    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    toolbar.setTitle(b.getString("title")); 
    toolbar.setSubtitle("2 hores"); 
    setSupportActionBar(toolbar); 
    toolbar.setNavigationOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      finish(); 
     } 
    }); 
} 

ответ

0

создать макет

normal_toolbar.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="92dp" 
    android:background="@color/colorPrimary" 
    android:paddingBottom="14dp" 
    android:paddingTop="14dp" 
    app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> 

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center_vertical"> 

      <TextView 
       android:id="@+id/tittle" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 

       android:text=" some large text Vishwesh Jainkuniya" 


       /> 



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

Теперь в вашем Activity.java под onCreate метод

Toolbar mToolbar; 
    TextView tittle; 

    mToolbar = (Toolbar) findViewById(R.id.toolbar); 
    tittle= (TextView) findViewById(R.id.tittle); 

    tittle.setTitle("Some very very very very very very very very large text"); 

Теперь в основной макет выглядит

<android.support.design.widget.AppBarLayout 
    android:id="@+id/app_bar" 
    android:layout_width="match_parent" 
    android:layout_height="@dimen/app_bar_height" 
    android:fitsSystemWindows="true" 
    android:theme="@style/AppTheme.AppBarOverlay"> 

    <android.support.design.widget.CollapsingToolbarLayout 
     android:id="@+id/toolbar_layout" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:fitsSystemWindows="true" 
     app:contentScrim="?attr/colorPrimary" 
     app:layout_scrollFlags="scroll|exitUntilCollapsed"> 

     <include layout="@layout/normal_toolbar" /> 

    </android.support.design.widget.CollapsingToolbarLayout> 

</android.support.design.widget.AppBarLayout> 

<include layout="@layout/content_scrolling" /> 

<android.support.design.widget.FloatingActionButton 
    android:id="@+id/fab" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_margin="@dimen/fab_margin" 
    android:src="@android:drawable/ic_dialog_email" 
    app:layout_anchor="@id/app_bar" 
    app:layout_anchorGravity="bottom|end" /> 
+0

Hei! Вы прочитали мое описание? Я попытался установить панель инструментов с TextView внутри, но затем прокрутка активирует все свои свойства. Спасибо! – Marc