Android 静态工具栏图标
我正在开发一个Android-L-test-app,其中包含一些材料设计指南的功能。我正在尝试实现一个工具栏,在上面的图标是静态的Android 静态工具栏图标,android,material-design,android-toolbar,Android,Material Design,Android Toolbar,我正在开发一个Android-L-test-app,其中包含一些材料设计指南的功能。我正在尝试实现一个工具栏,在上面的图标是静态的 <include layout="@layout/toolbar_actionbar" /> <!-- Session title --> <TextView android:layout_height="wrap_content" android:layout_
<include layout="@layout/toolbar_actionbar" />
<!-- Session title -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginBottom="0dp"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_title"
android:id="@+id/session_title"
android:maxLines="4"
android:ellipsize="end"
android:textSize="@dimen/text_size_large"
android:lineSpacingMultiplier="1.1"
android:textStyle="@integer/font_textStyle_medium"
android:fontFamily="@string/font_fontFamily_medium"
android:textColor="@color/body_text_1_inverse" />
<!--android:textAlignment="viewStart" -->
<!-- Session subtitle -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_subtitle"
android:id="@+id/session_subtitle"
android:maxLines="2"
android:ellipsize="end"
android:textSize="16sp"
android:textColor="@color/body_text_2_inverse" />
<!--android:textAlignment="viewStart" -->
</LinearLayout>
这是在谷歌IO 2014应用程序中完成的,我想复制它。我一直在看代码(),但我不知道他们是怎么做到的
<include layout="@layout/toolbar_actionbar" />
<!-- Session title -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginBottom="0dp"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_title"
android:id="@+id/session_title"
android:maxLines="4"
android:ellipsize="end"
android:textSize="@dimen/text_size_large"
android:lineSpacingMultiplier="1.1"
android:textStyle="@integer/font_textStyle_medium"
android:fontFamily="@string/font_fontFamily_medium"
android:textColor="@color/body_text_1_inverse" />
<!--android:textAlignment="viewStart" -->
<!-- Session subtitle -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_subtitle"
android:id="@+id/session_subtitle"
android:maxLines="2"
android:ellipsize="end"
android:textSize="16sp"
android:textColor="@color/body_text_2_inverse" />
<!--android:textAlignment="viewStart" -->
</LinearLayout>
下面是一个屏幕截图,可以直观地看到我的问题:
<include layout="@layout/toolbar_actionbar" />
<!-- Session title -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginBottom="0dp"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_title"
android:id="@+id/session_title"
android:maxLines="4"
android:ellipsize="end"
android:textSize="@dimen/text_size_large"
android:lineSpacingMultiplier="1.1"
android:textStyle="@integer/font_textStyle_medium"
android:fontFamily="@string/font_fontFamily_medium"
android:textColor="@color/body_text_1_inverse" />
<!--android:textAlignment="viewStart" -->
<!-- Session subtitle -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_subtitle"
android:id="@+id/session_subtitle"
android:maxLines="2"
android:ellipsize="end"
android:textSize="16sp"
android:textColor="@color/body_text_2_inverse" />
<!--android:textAlignment="viewStart" -->
</LinearLayout>
左侧:我实际情况的屏幕截图(菜单图标在标题中为硬图标,并随这些图标一起滚动)
右侧:这就是我想要的(“屏幕顶部的静态”图标):
<include layout="@layout/toolbar_actionbar" />
<!-- Session title -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginBottom="0dp"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_title"
android:id="@+id/session_title"
android:maxLines="4"
android:ellipsize="end"
android:textSize="@dimen/text_size_large"
android:lineSpacingMultiplier="1.1"
android:textStyle="@integer/font_textStyle_medium"
android:fontFamily="@string/font_fontFamily_medium"
android:textColor="@color/body_text_1_inverse" />
<!--android:textAlignment="viewStart" -->
<!-- Session subtitle -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_subtitle"
android:id="@+id/session_subtitle"
android:maxLines="2"
android:ellipsize="end"
android:textSize="16sp"
android:textColor="@color/body_text_2_inverse" />
<!--android:textAlignment="viewStart" -->
</LinearLayout>
有什么想法吗
<include layout="@layout/toolbar_actionbar" />
<!-- Session title -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginBottom="0dp"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_title"
android:id="@+id/session_title"
android:maxLines="4"
android:ellipsize="end"
android:textSize="@dimen/text_size_large"
android:lineSpacingMultiplier="1.1"
android:textStyle="@integer/font_textStyle_medium"
android:fontFamily="@string/font_fontFamily_medium"
android:textColor="@color/body_text_1_inverse" />
<!--android:textAlignment="viewStart" -->
<!-- Session subtitle -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_subtitle"
android:id="@+id/session_subtitle"
android:maxLines="2"
android:ellipsize="end"
android:textSize="16sp"
android:textColor="@color/body_text_2_inverse" />
<!--android:textAlignment="viewStart" -->
</LinearLayout>
layout.xml:
<include layout="@layout/toolbar_actionbar" />
<!-- Session title -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginBottom="0dp"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_title"
android:id="@+id/session_title"
android:maxLines="4"
android:ellipsize="end"
android:textSize="@dimen/text_size_large"
android:lineSpacingMultiplier="1.1"
android:textStyle="@integer/font_textStyle_medium"
android:fontFamily="@string/font_fontFamily_medium"
android:textColor="@color/body_text_1_inverse" />
<!--android:textAlignment="viewStart" -->
<!-- Session subtitle -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_subtitle"
android:id="@+id/session_subtitle"
android:maxLines="2"
android:ellipsize="end"
android:textSize="16sp"
android:textColor="@color/body_text_2_inverse" />
<!--android:textAlignment="viewStart" -->
</LinearLayout>
布局工具栏\u actionbar.xml
<include layout="@layout/toolbar_actionbar" />
<!-- Session title -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginBottom="0dp"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_title"
android:id="@+id/session_title"
android:maxLines="4"
android:ellipsize="end"
android:textSize="@dimen/text_size_large"
android:lineSpacingMultiplier="1.1"
android:textStyle="@integer/font_textStyle_medium"
android:fontFamily="@string/font_fontFamily_medium"
android:textColor="@color/body_text_1_inverse" />
<!--android:textAlignment="viewStart" -->
<!-- Session subtitle -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_subtitle"
android:id="@+id/session_subtitle"
android:maxLines="2"
android:ellipsize="end"
android:textSize="16sp"
android:textColor="@color/body_text_2_inverse" />
<!--android:textAlignment="viewStart" -->
</LinearLayout>
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:iosched="http://schemas.android.com/apk/res-auto"
iosched:theme="@style/ActionBarThemeOverlay"
iosched:popupTheme="@style/ActionBarPopupThemeOverlay"
android:id="@+id/toolbar_actionbar"
android:background="@null"
iosched:titleTextAppearance="@style/ActionBar.TitleText"
iosched:contentInsetStart="0dp"
android:layout_width="match_parent"
android:layout_height="?actionBarSize"
/>
menu.xml:
<include layout="@layout/toolbar_actionbar" />
<!-- Session title -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginBottom="0dp"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_title"
android:id="@+id/session_title"
android:maxLines="4"
android:ellipsize="end"
android:textSize="@dimen/text_size_large"
android:lineSpacingMultiplier="1.1"
android:textStyle="@integer/font_textStyle_medium"
android:fontFamily="@string/font_fontFamily_medium"
android:textColor="@color/body_text_1_inverse" />
<!--android:textAlignment="viewStart" -->
<!-- Session subtitle -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_subtitle"
android:id="@+id/session_subtitle"
android:maxLines="2"
android:ellipsize="end"
android:textSize="16sp"
android:textColor="@color/body_text_2_inverse" />
<!--android:textAlignment="viewStart" -->
</LinearLayout>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:iosched="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/menu_map_room"
android:icon="@drawable/ic_action_map"
android:title="@string/description_map"
android:orderInCategory="1"
iosched:showAsAction="ifRoom" />
<item android:id="@+id/menu_share"
android:icon="@drawable/ic_action_share"
android:title="@string/description_share"
android:orderInCategory="1"
iosched:showAsAction="ifRoom" />
<item android:id="@+id/menu_social_stream"
android:icon="@drawable/ic_action_social_stream"
android:title="@string/description_social_stream"
android:orderInCategory="1"
android:visible="true"
iosched:showAsAction="ifRoom" />
您可以将主要内容添加到scrollview中,并从中删除工具栏。然后,在滚动时应使用淡入淡出效果
<include layout="@layout/toolbar_actionbar" />
<!-- Session title -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginBottom="0dp"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_title"
android:id="@+id/session_title"
android:maxLines="4"
android:ellipsize="end"
android:textSize="@dimen/text_size_large"
android:lineSpacingMultiplier="1.1"
android:textStyle="@integer/font_textStyle_medium"
android:fontFamily="@string/font_fontFamily_medium"
android:textColor="@color/body_text_1_inverse" />
<!--android:textAlignment="viewStart" -->
<!-- Session subtitle -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_subtitle"
android:id="@+id/session_subtitle"
android:maxLines="2"
android:ellipsize="end"
android:textSize="16sp"
android:textColor="@color/body_text_2_inverse" />
<!--android:textAlignment="viewStart" -->
</LinearLayout>
<include layout="@layout/toolbar_actionbar" />
<!-- Session title -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginBottom="0dp"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_title"
android:id="@+id/session_title"
android:maxLines="4"
android:ellipsize="end"
android:textSize="@dimen/text_size_large"
android:lineSpacingMultiplier="1.1"
android:textStyle="@integer/font_textStyle_medium"
android:fontFamily="@string/font_fontFamily_medium"
android:textColor="@color/body_text_1_inverse" />
<!--android:textAlignment="viewStart" -->
<!-- Session subtitle -->
<TextView android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_marginLeft="@dimen/keyline_2_session_detail"
android:layout_marginRight="@dimen/keyline_1"
android:text="@string/placeholder_session_subtitle"
android:id="@+id/session_subtitle"
android:maxLines="2"
android:ellipsize="end"
android:textSize="16sp"
android:textColor="@color/body_text_2_inverse" />
<!--android:textAlignment="viewStart" -->
</LinearLayout>
TypedValue typedValue = new TypedValue();
MainActivity.this.getTheme().resolveAttribute(R.attr.colorPrimary, typedValue, true);
final int color = typedValue.data;
它不像听起来那么简单…:)事实上我有工具栏,除了褪色效果。我第一次使用工具栏时,我把它放在滚动视图中,得到的问题和你一样。