微信小程序 ,列表头滚动的过程中 view 悬浮在顶部

微信小程序 ,列表头滚动的过程中 view 悬浮在顶部,第1张

微信小程序 ,列表头滚动的过程中 ,view  悬浮在顶部  ,如何实现这样的一个效果呢??

//index.js

//获取应用实例

const app = getApp()

Page({

  data: {

    testData: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16],

    testData2: [1, 2, 3, 4, 5,  10],

    //是否显示 悬停布局

    isshow:false,

    //悬浮布局的数据

    toptexxt:""

  },

  onLoad: function () {

  },

  /**

* 页面加载完成

*/

  onReady: function () {

  },

  /**

* 页面滚动监听

*/

  onPageScroll: function (e) {

    //console.log(e)

    let that = this

    let query = wx.createSelectorQuery()

    query.selectAll(".section-cell").boundingClientRect(function (res) {

      console.log(res)

      let size =res.length

      let position = -1

      let topshow = -1000//根据需求设置大小

      let i=0

      //根据 top  的 大小 获取 当前距离顶部最近的view 的下标, 负数最大值 或者是0,

      for(i=0i<sizei++){0

        let top = res[i].top

        if(top<=0 &&top>topshow ){

          topshow = top

          position=i

        }

      }

      console.log("当前坐标是 position = "+position)

      let isshow =false

      if (res[0].top<0){

        if(position==-1) position=0

          isshow = true

      }

      that.setData({

        isshow: isshow,

        toptexxt: isshow?that.data.testData[position]:""

      })

    }).exec()

  },

})

<!--index.wxml-->

<view>

  <view class='header'>这里是header</view>

  <view hidden='{{!isshow}}'>

    <view class= "section-header section-fixed" >这是section-header {{toptexxt}}</view>

  </view>

  <view wx:for="{{testData}}" wx:key="{{testData}}">

    <view>

      <view class='section-cell' id='top{{item}}'>{{item}} </view>

      <view wx:for="{{testData2}}" wx:key="{{testData2}}">

        <view class='section-cell2' id='child{{item}}'>{{item}}</view>

      </view>

    </view>

  </view>

</view>

/**index.wxss**/

.section-placeholder {

  background-color: white

}

.section-fixed {

  position: fixed

  top: 0

}

.header {

  height: 300rpx

  width: 750rpx

  background-color: bisque

}

.section-header {

  height: 80rpx

  width: 750rpx

  background-color: rebeccapurple

}

.section-cell {

  width: 750rpx

  height:80rpx

  background-color: gold

  margin-top: 2rpx

}

.section-cell2 {

  height: 50rpx

  width: 750rpx

  background-color: darkred

}

图片效果

1. 主屏小组件:让桌面更个性化

如何让手机桌面更个性化?常规 *** 作是更换壁纸、排列 app 图标,而现在你还可以更新到 iOS 14 后创建小组件。

小组件允许放置在桌面任意位置,有助于一目了然地查看信息,适用于追踪通勤、健身记录、日历事件或新闻报道。

添加方式很简单,长按主屏幕,点击左上角的「+」,即可选择不同类型的小组件,目前仍多为系统应用,如照片、天气、时钟、备忘录、待办事项、屏幕使用时间等。

和老 Android 的桌面小部件相比,苹果明显对 iOS 小部件的尺寸做了限制。系统提供了 2×2(小)、2×4(中)和 4×4(大)三种尺寸,比例越大,显示的信息也就越丰富。而因为小组件的加入被挤掉的 app 圆角图标,则会自动挪至下一屏。

如果你认为桌面摆放的小组件过多但使用并不频繁,不妨试试将一个小组件拖至另一个小组件上方,创建叠放,上下翻阅查看,以此充分利用主屏幕上的空间。

值得一提的是,智能叠放的小组件会根据时间、地点和活动等因素进行判断,在适当的时机展示相应界面。

另外,除了放在主屏幕,你还可以将小组件放在「今天」视图中(也就是我们常说的负一屏)。

说到「今天」视图,难免会让人想要去比较新的小组件和原本的 Widget(通知中心小组件)到底有何不同。事实上,相比「实用」的 Widget,小组件更像是一个信息展示窗口,或者说是 app 启动器,《JSBox》的开发者钟颖就指出了他认为小组件存在的三大「硬伤」:

交互能力弱。点击小组件后会直接跳转到 app 中,因此无法进行连续点按 *** 作,像是计算器类 Widget 就无法实现;

无法主动更新数据。小组件更偏向于「静态的」信息展示;

页面动态性更弱。因为尺寸样式已经固定,相比 Widget 少了一些灵活性。

即便如此,小组件的优势依然很明显,不仅占据了主屏更关键醒目的位置,在「今天」视图中的排列优先级也在 Widget 之上。

前面也说到,目前小组件多为系统应用提供,期待广大第三方能玩出花样。

2. App 资源库:系统为你自动整理 App

滑动主屏到最后一页,你将看到 iOS 14 引入的一个全新空间「App 资源库」,以文件夹形式展示,能自动对所有应用做智能分类和收纳整理,视图简单美观。

《微信》被归到社交、《淘宝》被归到购物与美食,只有少数 app 如《支付宝》没被归到该在的效率与财务,大多分类都在理解范围内,易于快速查找访问。

除了依照产品本身特性进行分类,「App 资源库」第一行的两个文件夹会实时更新:

「建议」文件夹会根据时间、地点或活动等信号,推荐你可能想打开的 app;

「最近添加」文件夹则会显示你最近下载的 app,或是最近使用 的 App Clips(苹果小程序,下文会讲到)。

不得不提的还有「App 资源库」顶部搜索功能,不仅支持搜索 app 名称,所有 app 也都按字母顺序显示,有助于迅速查找。

了解了「App 资源库」和小组件,你就可以对桌面进行大改造了。如你所见,下面三个看起来很清爽的主屏截图,有 2 个共同点:展示的 app 数量少,页数少(Dock 栏上方的小白点对应页面)。

在过去两个月,从国外的 Google I/O、Apple WWDC、Facebook 开发者大会,到国内的飞聊、QQ改版、豆瓣FM 6.0,可以看到很多关于交互设计上的趋势。

同时,我从日常的产品体验中,整理了一些思考内容,以下是对 2020 年交互设计趋势的展望。

模态展示

在 iOS 13 中,模态面板采用了新的卡片样式,它占据了屏幕 90% 的面积。模态面板拉起时,原有的页面会有一个纵深效果,以灰色状态显示,防止用户和它们发生交互。模态面板可以通过滑动 *** 作下拉关闭,适用于单手 *** 作,专为大屏服务。

在系统邮件、日历、通讯录、Apple Music、信息 Animoji 等自带应用中,模态面板得到了广泛应用。

△ Apple Music &邮件

专注下半部分

夸克浏览器是专注下半部分做得最好的一个,夸克并没有像 Safari、Chrome 那样把搜索框放在顶部,而是将整合后的搜索栏放在了用户更容易 *** 作的屏幕下半部分。

分层内容

分层内容是基于动作菜单,d出分层内容。分层内容的展现形式可以减少页面跳转,让用户保持在最原始的环境中。并且主要 *** 作交互位于界面下半部分,触手可及。

△ Snapchat &Keep

1. 悬停分层

在网易云音乐、即刻、飞聊等应用中,采用了悬停分层。顶部展示的是介绍性内容,随着页面下滑,介绍内容隐藏,同时功能栏将置顶悬停,展示的内容区域大大增加。

△ 网易云音乐 &即刻

△ Broadcasting iOS App UI Exploration

连续性页面

连续性页面的转换效果可以很好记住产品路线,加强了页面的层级关系。同时,流畅的动画转换效果,带来了更连贯的用户体验。

App Store 和 Behance,以及最近发布的豆瓣 FM 6.0,都采用了这种方式。

△ App Store &Behance

全屏展示

很多App在引导评分样式上,都采用的是系统d窗。在 Keep App 上,设计了一个全屏展示的评分提示。形式新颖,加上背景图的气氛,让人想去评分的意愿大大增加。

△ Airbnb 爱彼迎 &Keep

快捷验证

1. 苹果账号登录

近两年几乎所有的 App 都会推荐首先使用手机号+短信验证码的方式注册/登录,同时也会接入像微信、QQ、支付宝这样的三方登录。

在 WWDC 2019 上,苹果也给我们带来了 「使用苹果账号登录」,几乎所有的苹果设备都会登录 Apple ID。因此,我们可以在不久的将来,通过苹果账号,就可以直接登录所有的 App,是不是很方便?

2. 号码识别

网易易盾的号码识别,可以自动获取当前开启流量的 SIM 卡号码,一键点击即可完成注册、登录 *** 作。减少手机号输入、短信验证码等待时间等传统步骤,提升关键环节转化率。

△ 网易易盾

语音交互

近年来,智能语音技术在很多场景得到了应用,微软的 Cortana,苹果的 Siri、谷歌的 Assistant。在引入深度学习后,语音助手可以在训练中越来越强,吐词更连贯。夸克的语音助手有本地天气、本周本月可视化数据、新闻热点、节日问候、冷知识等功能。

在5月的开发者大会上,谷歌展示了其人工智能与语音识别的 Live Relay 技术。其能够为不便应答电话的用户,提供基于实时语音/文字互转的通话支持。对于聋哑人来说,这绝对是一项实用的功能。

△ Google I/O 2019 Live Relay

事实上,Live Relay 也能帮助到一般人,例如当我们需要接听重要电话,但却无法离开当下所进行事项,Live Relay 在此时就能派上用场,透过输入文字的方式,接听重要来电。

最方便的是,Live Relay 还可整合即时的翻译功能,这在与外国人士沟通时起了很大的帮助作用,可说是另外一种「无障碍功能」。

AR增强现实

1. WANNA KICKS 通过AR技术「试鞋」

通过 AR 增强现实技术与智能手机相机的结合,帮助你看到 YEEZY BOOST 350 等运动鞋「穿」在自己脚上的效果,它甚至还能模拟出鞋子在光线不同环境下的各种效果。

2. 小程序AR+口红试色

昨天,首个支持AR动态试妆的小程序「阿玛尼美妆」同步更新上线。基于小程序基础能力和谷歌 TensorFlow 机器学习开源平台支持,欧莱雅集团开发了 AR 动态试妆能力。相比以前上传照片的试色方式,AR 动态试妆让试色更真实。

AR 使用在网页设计或应用程序领域,它能够自然地将虚拟与现实结合,带来身临其境的新体验。

多窗口预览

△ App Store &QQ

在 QQ 最新的版本中,列表页面长按消息,会d出多窗口模式,消息可以来回切换,类似于 iOS 后台切换模式。在会话窗口长按任意地方,也会呼出多窗口模式。

总结

科技 发展给设计产生的影响是巨大的,让我更深刻地认识到作为设计师的责任。这些设计趋势有意或无意地将帮助用户得到更好的产品体验。

本文转自:优设网

作者:洋爷


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7962191.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存