`
bell0901
  • 浏览: 28569 次
社区版块
存档分类
最新评论

StatusBar/Toolbar的隐藏显示,窗体背景设置

阅读更多

  直接上图,类似相册的效果。

   

  两张图都是隐藏了statusbar(状态栏),第一张显示toolbar,窗体背景为白色,第二张隐藏toolbar,窗体背景为黑色。(第一张的下面就是一个 layout_width="fill_parent" 的textview,点击是隐藏)

  首先,statusbar(状态栏)的隐藏,在这里直接在theme里面style加一条

<item name="android:windowFullscreen">true</item>

  或者android:theme=”@android:style/Theme.NoTitleBar.Fullscreen”,

  或者在activity里加入一下代码

 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
         WindowManager.LayoutParams.FLAG_FULLSCREEN);

  接着,toolbar左边的返回箭头(Google官方不推荐使用)

getSupportActionBar().setDisplayHomeAsUpEnabled(true);

  当屏幕被触摸,响应事件

@Override
    public boolean onTouchEvent(MotionEvent event) {
        // TODO Auto-generated method stub
        if (event.getAction() == MotionEvent.ACTION_DOWN) {        //屏幕被触摸
            if (s == 1) {                             //隐藏toolbar和textview
                showToolbar.animate().translationY(-showToolbar.getHeight()).setInterpolator(new AccelerateInterpolator(2)); //属性动画
                FrameLayout.LayoutParams lp = (FrameLayout.LayoutParams) titleShower.getLayoutParams();
                int fabBottomMargin = lp.bottomMargin;
                titleShower.animate().translationY(titleShower.getHeight() + fabBottomMargin).setInterpolator(new AccelerateInterpolator(2)).start();
                shower.setBackgroundColor(Color.BLACK);          //当前页面的layout
                s = 0;
            } else {
                showToolbar.animate().translationY(0).setInterpolator(new DecelerateInterpolator(2));
                titleShower.animate().translationY(0).setInterpolator(new DecelerateInterpolator(2)).start();
                shower.setBackgroundColor(Color.WHITE);
                s = 1;
            }
        }
        return true;
    }

 

  隐藏和显示时都加入了属性动画,慢慢地隐藏。

 

分享到:
评论

相关推荐

    监听列表滚动来隐藏或显示Toolbar与浮动按钮

    在Android应用开发中,我们经常需要根据用户交互来动态调整界面元素的可见性,例如当用户滚动列表时,隐藏或显示顶部的ToolBar以及悬浮动作按钮(Floating Action Button, FAB)。这种效果能提供更好的用户体验,...

    Toolbar-Imagelist-Statusbar.zip_Toolbar_imagelist_statusbar控件_to

    同时,我们还需要处理好控件之间的交互逻辑,比如在窗体间切换时,如何保存和恢复Toolbar和Statusbar的状态,以保持用户的使用习惯。 在"08020803-2008301870-仙米西巴努-实验2"这个实验项目中,很可能是对这些...

    Android 动态的隐藏/显示Toolbar.rar

    本教程将探讨如何在Android应用中动态地隐藏和显示`Toolbar`,特别是在列表滚动时实现这一功能。我们将主要关注以下几个知识点: 1. **Toolbar的引入与设置** - `Toolbar`是`android.support.v7.widget.Toolbar`库...

    ActionBar and StatusBar

    例如,在全屏模式下,可以隐藏StatusBar以获得更大的显示空间,但仍然需要保留ActionBar供用户操作。通过`SYSTEM_UI_FLAG_FULLSCREEN`标志可以实现StatusBar的隐藏和显示。 在实际开发中,我们还需要注意不同...

    Android 仿Toolbar动画显示隐藏.zip

    本示例"Android 仿Toolbar动画显示隐藏.zip"主要展示了如何在Android应用中实现Toolbar的动态显示和隐藏,特别是在用户上滑屏幕时隐藏,下滑到顶部时恢复显示的交互效果。这一特性常用于新闻阅读、社交应用等场景,...

    AppBarLayout往上滑隐藏ToolBar

    在本场景中,我们关注的是如何设置AppBarLayout使其在用户向上滑动时隐藏ToolBar。 首先,让我们理解这两个组件的基本概念: 1. **AppBarLayout**: 这是一个垂直的LinearLayout的扩展,设计用于承载顶部应用栏元素...

    RecyclerView上拉隐藏title,下拉显示title

    可以通过设置View的 visibility 属性(VISIBLE、GONE 或 INVISIBLE)来控制标题的显示与隐藏。 5. **动画效果**: 为了提高用户体验,可以添加平滑的动画效果。在切换标题的可见性时,可以使用Android的动画库,如...

    用CoordinatorLayout 实现 toolbar 隐藏效果

    对于`NestedScrollView`,我们将其行为设置为`@string/appbar_scrolling_view_behavior`,这样`AppBarLayout`就会根据内容视图的滚动自动隐藏或显示`Toolbar`。 4. **Java代码中设置Toolbar**: 在Activity的...

    动态隐藏和显示工具栏

    在软件开发过程中,用户界面(UI)的设计至关重要,其中一种常见的设计手法是动态隐藏和显示工具栏。这种技术可以优化用户界面,提高空间利用效率,同时保持功能的易用性。本文将深入探讨动态隐藏和显示工具栏的概念...

    AppBarLayout实现上滑隐藏ToolBar

    这个组件主要用于创建具有可滚动头部的界面,通常与ToolBar或CollapsingToolbarLayout结合使用,以实现类似iOS中导航栏的上滑隐藏、下滑显示的效果。在本例中,我们将深入探讨如何利用AppBarLayout实现这一功能。 ...

    ToolBar 样式更改Demo

    这里的`android:id`用于后续Java代码中对`ToolBar`的引用,`android:layout_width`和`android:layout_height`定义了其尺寸,`android:background`设置了默认背景颜色。 接下来,在`onCreate`方法中,我们需要将`...

    Android用CoordinatorLayout实现Toolbar隐藏和折叠

    &lt;android.support.v7.widget.Toolbar/&gt; &lt;/android.support.design.widget.AppBarLayout&gt; &lt;android.support.v7.widget.RecyclerView/&gt; &lt;/android.support.design.widget.CoordinatorLayout&gt; ``` 3. **设置...

    Toolbar自定义样式

    在这个例子中,我们添加了一个`TextView`来显示标题,可以自由设置文字颜色和大小。注意,如果你想要使用默认的`Toolbar`标题,只需在你的Activity中设置`setTitle()`方法即可。 接下来,我们可以通过设置`style`...

    DrawerLayout + Toolbar 与主题theme 颜色设置

    下面将详细介绍如何使用 `DrawerLayout`、`Toolbar` 以及如何在Android应用中设置主题颜色。 `DrawerLayout` 是Android支持库中的一个布局组件,它允许开发者在屏幕边缘(通常是从左侧或右侧)滑出一个抽屉式的菜单...

    Android之ToolBar和自定义ToolBar实现沉浸式状态栏

    Android 5.0(Lollipop)及以上版本提供了原生支持,但为了兼容更低版本,我们可以使用Translucent Status Bar技术。 1. 修改主题风格:在styles.xml文件中,创建一个新的主题并设置`android:...

    android状态栏与toolbar一体化

    状态栏(StatusBar)是手机屏幕顶部显示系统信息的地方,如时间、信号强度、电量等,而ToolBar是Android中的一个可定制的导航组件,通常用作应用程序的主菜单或标题栏。将两者一体化可以实现更美观、一致的界面效果...

    Android ToolBar使用图标、菜单事件示例

    接下来,我们需要在Activity中找到这个`ToolBar`并将其设置为Action Bar: ```java Toolbar toolbar = findViewById(R.id.toolbar); setSupportActionBar(toolbar); ``` 要设置`ToolBar`的标题,可以使用`setTitle...

    toolbar

    此外,`Toolbar`支持动画效果,如滑动隐藏和显示,这在配合Fragment或者NestedScrollView时特别有用。通过设置`CollapsingToolbarLayout`,我们可以实现类似Google Play商店那样的头部动态效果。 总之,`Toolbar`是...

    macOS SwiftUI 设置窗体透明背景和特效

    macOS SwiftUI 设置窗体背景和特效 1、 .behindWindow。对于您自己创建的视觉效果视图,请使用属性指定要应用半透明性的方式和位置。2、.hudWindow。平视显示(HUD)窗口背景的材料。3、当强调某些材料时,它们会...

    纯win32创建rebar然后加入toolbar和status

    7. **设置控件样式**:为了使Rebar、Toolbar和Status Bar符合预期的视觉效果,需要通过`SetWindowLong`或`SetWindowPos`函数设置它们的样式和大小。 8. **消息循环**:启动消息循环,处理窗口消息。在`WndProc`中,...

Global site tag (gtag.js) - Google Analytics