首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >顶部的静态工具栏图标

顶部的静态工具栏图标
EN

Stack Overflow用户
提问于 2015-01-27 07:42:29
回答 1查看 156关注 0票数 0

我正在开发一个Android-L-test-app,其中包含了material-design-guide的一些功能。我正在尝试实现一个工具栏,其中的图标是静态的。

它是在google IO 2014应用程序中完成的,我想复制它。我一直在看代码(https://github.com/google/iosched),但我不明白他们是怎么做到的。

这里有一个屏幕截图来可视化我的问题:http://imgur.com/Wa7wi88

左侧:我的实际情况的屏幕截图(菜单图标很难在标题中显示,并与这些一起滚动)右侧:这是我想要的(屏幕顶部的“静态”图标“):

有什么想法吗?

layout.xml:

代码语言:javascript
复制
        <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>

布局toolbar_actionbar.xml

代码语言:javascript
复制
<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:

代码语言:javascript
复制
<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" />

EN

回答 1

Stack Overflow用户

发布于 2015-01-27 08:08:09

您可以将主要内容添加到滚动视图中,并将工具栏添加到滚动视图中。然后,您应该使用淡入淡出效果,当您滚动它。

  1. RelativeLayout to all screen.
  2. Toolbar to all screen
  3. Toolbar inside RelativeLayout parent top,
    1. RelativeLayout inside RelativeLayout to all screen to all screen当您向下滚动X时从透明到您的主题颜色,反之亦然。

您可以在java中获取colorPrimary或colorPrimaryDark,因此:

代码语言:javascript
复制
            TypedValue typedValue = new TypedValue();
            MainActivity.this.getTheme().resolveAttribute(R.attr.colorPrimary, typedValue, true);
            final int color = typedValue.data;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28160857

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档