CollapsingToolbarLayout sets the title only when collapsing

I try to set the collapsingToolbarLayout header only when it is compensated

To do this, I install:

 app:expandedTitleTextAppearance="@android:color/transparent" 

And it works well.

But application error 4.2.2 with the following Log

 STACK_TRACE java.lang.IllegalArgumentException: width and height must be > 0 at android.graphics.Bitmap.createBitmap(Bitmap.java:687) at android.graphics.Bitmap.createBitmap(Bitmap.java:666) at android.graphics.Bitmap.createBitmap(Bitmap.java:633) at android.support.design.widget.CollapsingTextHelper.ensureExpandedTexture(CollapsingTextHelper.java:405) at android.support.design.widget.CollapsingTextHelper.setInterpolatedTextSize(CollapsingTextHelper.java:382) at android.support.design.widget.CollapsingTextHelper.calculateOffsets(CollapsingTextHelper.java:227) at android.support.design.widget.CollapsingTextHelper.setExpansionFraction(CollapsingTextHelper.java:203) at android.support.design.widget.CollapsingToolbarLayout$OffsetUpdateListener.onOffsetChanged(CollapsingToolbarLayout.java:754) at android.support.design.widget.AppBarLayout$Behavior.dispatchOffsetUpdates(AppBarLayout.java:851) at android.support.design.widget.AppBarLayout$Behavior.setAppBarTopBottomOffset(AppBarLayout.java:834) at android.support.design.widget.AppBarLayout$Behavior.scroll(AppBarLayout.java:793) at android.support.design.widget.AppBarLayout$Behavior.onNestedScroll(AppBarLayout.java:644) at android.support.design.widget.AppBarLayout$Behavior.onNestedScroll(AppBarLayout.java:583) at android.support.design.widget.CoordinatorLayout.onNestedScroll(CoordinatorLayout.java:1428) at android.support.v4.view.eh.a(ViewParentCompat.java:97) at android.support.v4.view.ec.a(ViewParentCompat.java:330) at android.support.v4.view.bk.a(NestedScrollingChildHelper.java:162) at android.support.v7.widget.RecyclerView.dispatchNestedScroll(RecyclerView.java:8306) at android.support.v7.widget.RecyclerView.scrollByInternal(RecyclerView.java:1387) at android.support.v7.widget.RecyclerView.onTouchEvent(RecyclerView.java:2209) 

Please suggest me the correct way to implement it.

OR

Is there a Listener to determine if collapsingToolbarLayout worked so that I can hide / hide ToolBar title ...

OR

Is it possible to set the collapsingToolbarLayout header to match the other view I want ...

+4
source share
3 answers

The final CollapsingToolbarLayout as follows: -

 collapsingToolbarLayout = (CollapsingToolbarLayout) findViewById(R.id.toolbar_layout); collapsingToolbarLayout.setTitle("Create Delivery Personnel"); collapsingToolbarLayout.setExpandedTitleColor(getResources().getColor(R.color.transperent)); collapsingToolbarLayout.setCollapsedTitleTextColor(Color.rgb(0, 0, 0)); 
+15
source

I found the same problem today. I finally solved it by defining it in xml

 app:expandedTitleTextAppearance="@android:color/transparent" 

And also by checking the pre-kitkat program code

 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) { mCollapsingToolbar.setExpandedTitleTextAppearance(R.style.TransparentText) }; 

Where is the style TransparentText

 <style name="TransparentText" parent="@android:style/TextAppearance"> <item name="android:textColor">#00000000</item> </style> 

I know this is very late, but I hope this can help others :)

+3
source

You can add a listener to the AppBar so you can listen to it crash or not.

 final Toolbar tool = (Toolbar)findViewById(R.id.toolbar); CollapsingToolbarLayout c = (CollapsingToolbarLayout)findViewById(R.id.collapsing_toolbar); AppBarLayout appbar = (AppBarLayout)findViewById(R.id.app_bar_layout); tool.setTitle(""); setSupportActionBar(tool); c.setTitleEnabled(false); appbar.addOnOffsetChangedListener(new AppBarLayout.OnOffsetChangedListener() { boolean isVisible = true; int scrollRange = -1; @Override public void onOffsetChanged(AppBarLayout appBarLayout, int verticalOffset) { if (scrollRange == -1) { scrollRange = appBarLayout.getTotalScrollRange(); } if (scrollRange + verticalOffset == 0) { tool.setTitle("Title"); isVisible = true; } else if(isVisible) { tool.setTitle(""); isVisible = false; } } }); 
+2
source

All Articles