更改工具栏布局android

问题描述

我正在制作一个具有多个片段的单一活动的应用程序。 主要片段包含一个带圆形工具栏的mapView,但我想转换工具栏宽度以匹配父级,例如Google驱动器中的此示例。

example transforming toolbar

main_activity的根视图是协调器布局

请告诉我如何转换工具栏布局 并为过渡设置动画

解决方法

slide_out.xml

    <?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="@android:integer/config_longAnimTime"
    android:fromXDelta="0%p"
    android:toXDelta="-100%p" >

</translate>

Slide_in.xml

   <?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="@android:integer/config_longAnimTime"
    android:fromXDelta="100%p"
    android:toXDelta="0%p" >

</translate>

java

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button,so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();

    switch(id) {
        // back button
        case android.R.id.home:
            finish();
            overridePendingTransition(R.anim.slide_enter,R.anim.slide_exit);
            return true;
    }

    return super.onOptionsItemSelected(item);
}