首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

reactvue 组件设计方法原则

依赖的静态资源放在同级目录 ③ 相关联组件也放在同级目录 2)高复用性 ① 页面级别的复用(基础组件) ② 项目级别的复用- 私有组件库(业务组件) ③ 公司级别的复用- 开源组件库(element-ui...一个抽屉(Drawer)组件会有如下需求点: 1>  能控制抽屉是否可见 2>  能手动配置抽屉的关闭按钮 3>  能控制抽屉打开方向 4>  关闭抽屉是否销毁里面的子元素(这个问题是5>  ...10> 可以设置抽屉弹出层宽度 11> 能控制弹出层层级 12> 能控制抽屉弹出方向(上下左右) 13> 点击关闭按钮能提供回调供开发者进行相关操作 需求收集好之后,作为一个有追求的程序员,...UI的功能。...一个比较合格的组件尽量保证200行代码内完成。 单一数据源原则   分析一个组件内部数据的流动,我们必须明确数据的来源和去向,以及相应的状态 我们不允许一个数据的存在多个来源。

1.9K30

android侧滑菜单控件DrawerLayout使用方法详解

同时DrawerLayout内部添加两个view: 添加一个View,它包含应用的主内容(当抽屉隐藏你的主要布局); 添加另一个View它包含了导航抽屉; 如下面例子所示:该布局使用了DrawerLayout...它包含了两个子节点:一个FrameLayout它包含了主要内容(在运行时将会被Fragment替换) 和 一个ListView作为导航抽屉,上面titlebar 上图标,负责打开、关闭抽屉; <?...)必须是Drawerlayout的第一个子节点因为XML安排这些界面的时候是按照Z轴的顺序来安排的 同时 抽屉必须在主内容的顶部。...主内容View被设置成匹配父View的宽和高,因为当导航抽屉隐藏的时候它要填充整个UI。...为了满足从右到左的约定,声明它的值为”start” 代替 “left”(因此这个抽屉将会在右面呈现当布局是RTL) 导航View声明时:宽度用dp为单位、高度匹配父View。

2.2K10
您找到你想要的搜索结果了吗?
是的
没有找到

你见过微信侧滑返回的联动效果,但开门效果、百叶窗效果见过吗?

(); 效果图: [弹性留白效果] 1.3 一行代码让页面具有弹性 //为控件添加仿MIUI的弹性拉伸效果: //当纵向不能滚动(或滚动到顶/底),若继续拖动,则UI呈现弹性拉伸效果,释放后平滑恢复...官方支持库中,滑动抽屉相关的SlidingPaneLayout和DrawerLayout,以及CoordinatorLayout布局相关的BottomSheetBehavior和SwipeDismissBehavior...于是,侧滑的手势事件识别及滑动距离计算的工作框架内部就统一完成了,至于根据侧滑距离来实现各种不同的UI呈现效果,就可以很方便地通过继承SwipeConsumer来实现了。...new StretchConsumer()) //添加弹性拉伸效果 .enableVertical(); //指定工作方向为:上、下2个方向 再来看看仿手机QQ侧滑返回的效果如何实现 手机QQ侧滑UI...setOpenDistance(Integer.MAX_VALUE) .setMaxSettleDuration(0); //打开无需动画,时间置为0 }

1.5K10

Flutter 全栈式——页面框架

dynamic>> 本地化委托,用于更改Widget默认的提示语,按钮text等 localeListResolutionCallback LocaleListResolutionCallback 该回调负责应用启动以及用户更改设备的区域设置选择应用的区域设置...checkerboardRasterCacheImages bool 为true打开光栅缓存图像的棋盘格 checkerboardOffscreenLayers bool 为true打开棋盘格层...showSemanticsDebugger bool 为true打开Widget边框,显示布局边界 debugShowCheckedModeBanner bool 为truedebug模式下显示右上角的...debug横幅 debugShowMaterialGrid bool debug模式下是否显示Material网格 // 构建UI前,设置一些属性 MaterialApp( builder...drawer Widget 开始部分的(左边)抽屉菜单 endDrawer Widget 结束部分的(右边)抽屉菜单 drawerScrimColor Color 打开侧滑菜单遮盖主要内容区的蒙层颜色

2.9K30

Android开发笔记(一百二十)两种侧滑布局

即拉出左侧面板,右边主页面的渐变阴影色,主页面变得越小则阴影色救越浓。阴影色默认为灰色。 setCoveredFadeColor : 设置左侧面板缩进去的阴影渐变色。...该监听器实现了下面三个方法: --onDrawerSlide : 抽屉面板滑动。 --onDrawerOpened : 抽屉面板已打开。...removeDrawerListener : 移除抽屉面板的拉出监听器。 closeDrawers : 关闭所有抽屉面板。 openDrawer : 打开指定抽屉面板。...2、SlidingPaneLayout的侧滑面板滑动,主页面也跟着往右滑;而DrawerLayout的侧滑面板滑动,主页面是不会滑动的,也就是说,侧滑面板会遮盖住主页面的部分UI; 3、SlidingPaneLayout...主页面任何位置水平向右滑动,都会拉出左侧面板;而DrawerLayout只有主页面左右边缘水平滑动,才能拉出侧滑面板; 4、拉出侧滑面板,SlidingPaneLayout主页面的灰色阴影较浅

1.9K30

AutoJs6 – v6.2.0 – 安卓 JavaScript 自动化工具 (Auto.js 二次开发)

更正文件名为 “ 文件管理器 ” 并恢复正常功能 修复 文件管理器下拉刷新可能出现定位漂移的问题 修复 ui 模块作用域绑定错误导致部分基于 UI 的脚本无法访问组件属性的问题 修复 录制脚本后的输入文件名对话框可能因外部区域点击导致已录制内容丢失的问题...应用初始安装后主页抽屉夜间模式开关联动失效的问题 修复 系统夜间模式开启应用启动后强制开启夜间模式的问题 修复 夜间模式开启后已设置的主题色可能无法生效的问题 修复 夜间模式下部分设置选项文字与背景色相同而无法辨识的问题...Root 权限修改主页抽屉权限开关失败未继续弹出 ADB 工具对话框的问题 修复 Root 权限显示指针位置初次使用时提示无权限的问题 修复 图标选择页面的图标元素排版异常 修复 文本编辑器启动可能因夜间模式设置导致闪屏的问题...方法 Alpha 通道为 0 其通道信息结果中丢失的问题 优化 重定向 Auto.js 4.x 版本的公有类以实现尽可能的向下兼容 (程度有限) 优化 合并全部项目模块避免可能的循环引用等问题...支持字符串参数及不定长参数 优化 ui.run 支持出现异常打印栈追踪信息 优化 ui.R 及 auto.R 可便捷获取 AutoJs6 的资源 ID 优化 app 模块中与操作应用相关的方法支持

4.3K20

Material Design — Navigation drawerStandard drawer Modal drawer Bottom drawer

导航抽屉表可以从屏幕左侧出现 (1),或者与 bottom app bar (2)同时使用时从屏幕底部打开。 范围小于62.5% ?...如果优先考虑进行帐户切换,则可以将帐户切换器放置导航抽屉的 header 区域 ?...·如果抽屉内容低于屏幕高度的50%,则 drawer 全部打开 ·如果 drawer 内容大于屏幕高度的50%,请先将其打开至50%,然后允许用户将 drawer 向上拖动至其全高或屏幕高度(以先到者为准...滚动 Bottom navigation drawers 一旦打开至全屏高度,就可以在内部滚动。 当最初打开到屏幕高度的50%显示其他项目之前,必须将 drawer 拖到屏幕高度。...滚动,drawer 的标题变成了一个高的 top app bar,并具有很好的可供性。 ?

3.8K40

Android性能优化:这些绘制优化你一定不能忽略!

问题 一般情况下,该默认的 Window 背景基本用不上:因背景都自定义设置 若不移除,则导致所有界面都多 1 次绘制 解决方案 移除默认的 Window 背景 方式1:应用的主题中添加如下的一行属性...,只有该区域内才会被绘制,区域之外的都不绘制 实例说明:DrawerLayout 布局 = 左抽屉布局 [1639288442877132.jpg] @Override protected boolean...若是左抽屉布局 // 则取抽屉布局的右边界作为裁剪区的左边界、设置原主布局的裁剪区域,如上图裁剪区域 if (checkDrawerViewAbsoluteGravity(v, Gravity.LEFT...若是右抽屉布局 // 则取抽屉布局的左边界作为裁剪区的右边界、设置原主布局的裁剪区域 } else { final int vleft = v.getLeft(); if (vleft...UI 显示性能分析上提供很好的数据,特别是动画播放不流畅、渲染卡等问题上

97420

翻了翻element-ui源码,发现一个很实用的指令clickoutside

今天翻 element-ui 的源码,发现一个还挺实用的工具指令,跟大伙分享一下。...它功能是指令需要接收一个函数,当用户鼠标点击的区域绑定指令的元素之外,会触发该函数。 那么使用这个指令能够实现什么功能呢?...我想到一个功能,就像我们常用的抽屉组件,点击抽屉之外的区域抽屉就会消失(但 elementui 中不是用这种方式,而是用一个遮罩层实现)。...例如:抽屉内有 el-select 选择栏,选择栏的 dom 是挂载到 body 下,导致点击完选择项后被判断为区域外点击。 ?...然后我又想到了一个问题,popperElm 只能设置一个,当有多个选择栏组件,还是会出现上面所说的情况。

2.3K10

Android通知Notification使用全解析,看这篇就够了

用户可以点击通知打开您的应用或直接从通知中执行操作。 2.1、展示 通知以不同的位置和格式向用户显示,例如状态栏中的图标、通知抽屉中更详细的条目、应用程序图标上的徽章以及自动配对的可穿戴设备。...当发出通知,它首先在状态栏中显示为一个图标。 2.2、操作 用户可以状态栏上向下滑动以打开通知抽屉,他们可以在其中查看更多详细信息并根据通知执行操作。...用户可以向下拖动抽屉中的通知以显示展开的视图,该视图显示其他内容和操作按钮(如果提供)。 通知通知抽屉中保持可见,直到被应用程序或用户关闭。...,会直接显示屏幕内(前台),而不是只有通知抽屉里,所以一定要谨慎设置,不要引起用户的负面情绪。...6.1.2、锁屏通知 Android 5.0开始,支持锁屏通知,即锁屏显示锁屏桌面。

4.2K30

Android性能优化:手把手带你全面了解绘制优化

,只有该区域内才会被绘制,区域之外的都不绘制 实例说明:DrawerLayout 布局 = 左抽屉布局 @Override protected boolean drawChild(Canvas canvas...若是左抽屉布局 // 则取抽屉布局的右边界作为裁剪区的左边界、设置原主布局的裁剪区域,如上图裁剪区域 if (checkDrawerViewAbsoluteGravity...若是右抽屉布局 // 则取抽屉布局的左边界作为裁剪区的右边界、设置原主布局的裁剪区域 } else { final int...通过clipRect()设置原主布局的显示范围 = 裁剪区域,使其仅在上图中的红框区域(即不阻碍抽屉布局的区域)显示 // 从而避免过度绘制 canvas.clipRect...UI 显示性能分析上提供很好的数据,特别是动画播放不流畅、渲染卡等问题上 具体使用 Systrace 使用指南 6.

70520

Android MVVM框架搭建(九)TabLayout、ViewPager、城市地图天气切换

修改一下标题 然后就是修改HomeActivity中的initView方法中的代码,如下图所示: 下面运行一下: 二、抽屉菜单   之前主页面的HomeActivity中使用过抽屉菜单,现在需要在...,这里设置是从屏幕右侧打开,如果不设置则默认是从左侧打开,因为我们布局中设置抽屉的位置右侧。...然后就是抽屉的监听,打开和关闭需要控制浮动按钮的显示和隐藏。...调用的地方当然还是onDistrictSearched方法中,如下图所示: 这里我nameList的size为0去调用这个地址转坐标的方法,为什么呢?...因此到这里,再点击就调用这个方法,去进行地址转坐标,让我们试试看,坐标是什么,我测试的城市是:广东省、深圳市、宝安区、沙井街道,得到的经纬度是:坐标:113.830294,22.735361 这说明成功了

1.5K20

活动可视化搭建系统——你的KPI被我承包了

综上分析可见,每个页面由多个小模块构成,可以是基础UI组件,也可以是一个复杂的业务组件,且组合方式多种多样,可以预想到当我们将这些不同组件像组件库那样整合在一起且可以页面进行可视化的编辑操作,不同的组件不同的排列即可生成一个全新的活动...抽屉式 自上而下顺序排列,可以更换组件位置,但不能实现元素定位,没有层级概念,遇到复杂布局或者需要叠放元素不够灵活,如果需要实现复杂页面的效果则需要引入复合UI组件的概念,它需要大量现成的UI组件。...自由式 完全可随意拖拽元素位置,自由度高,只需几个基础UI组件即可,存在层级概念,可任意叠放拼装,无成品UI组件的情况下diy出复杂页面。但页面不可控,对操作人员的美感要求更高。...半自由度从布局方案到组件的可配置项上来说开放程度有限,组件方面针对基础UI组件开放相对高的配置编辑项,同时积累大量的成品UI组件可选。在编辑不需要考虑太细节的样式问题,保证页面质量。...3.组件的积累才是重中之重,物料不丰富的情况下,开发效率提高有限,而一旦运行一年半载组件库丰富起来,效率将会肉眼可见的提高。

1.1K30

Flutter | 容器组件

实际开发中,当我们发现已经使用了 SizedBox 或者 ConstrainedBox 给定子元素宽高,但是仍然没有效果,几乎可以断定:已经有父元素设置了限制!..., ), ); } } 复制代码 平移 Transform.translate 接受一个 offset 参数,可以绘制沿 x,y 轴对子组件平移指定的距离 //平移 Widget..., UI 需要变化是,可以通过矩阵变换来达到视觉上的 UI 变化,而不是重新 build 流程,这样会节省 layout 的开销,所以性能会比较好,例如 Flow 组件,内部就是使用矩阵变换来更新 UI...//其它属性见源码注释 }) 复制代码 如果给 Scaffold 添加了抽屉菜单,默认情况下, Scaffold 会自动将 AppBar 的 leading 设置为菜单按钮(如上面截图所示),点击它可以打开抽屉菜单...() => {Scaffold.of(context).openDrawer()}, ); }), ........... ) 复制代码 可以看到左侧的菜单已经替换成功 打开抽屉的方法

5.5K10

2014-11-8Android学习------Android抽屉效果的实现案例--------动画Animation学习篇

肯定是当前包含有抽屉的视图被用户打开了,也就是可见了,就叫准备好了,也即是你只有看到抽屉的时候,你才可以去打开它,如果你没有看到它,还谈打开吗?...:delta为整个视图的高度 如果抽屉方向是水平的话:delta为整个视图的宽度 接下来就是画布上如何显示这个抽屉了,也是按照方向来的: if (mOrientation == VERTICAL...需要做一个判断 当这个抽屉看不到的时候,我们需要将抽屉画布的x,y坐标设置为(-1,-1) setInitialPosition = true;//如果手势是按下,方向得到确定了,置为true...X坐标上的位置 toXDelta 为动画结束 X坐标上的位置 fromYDelta 为动画起始 Y坐标上的位置 toYDelta 为动画结束 Y坐标上的位置 动画起始坐标到结束坐标...private int mPosition;//位置,也就是抽屉的位置,左,右,上,下 private int mDuration;//打开抽屉和关闭抽屉需要的时间 private boolean

1.5K20

基础篇章:关于 React Native 之 DrawerLayoutAndroid 组件的讲解

DrawerLayoutAndroid 属性 drawerBackgroundColor color 设置抽屉导航的背景色。默认值是白色。如果你想设置抽屉的透明度,使用RGBA。...: locked-closed,意思是此时抽屉将保持关闭,不可用手势打开。...locked-open,意思是此时抽屉将保持打开,不可用手势关闭。 记住:无论抽屉处于那种状态,我们都可以调用openDrawer/closeDrawer这 两个方法打开和关闭。...unlocked (默认值),意思是此时抽屉可以响应打开和关闭的手势操作。...renderNavigationView 该方法用于渲染一个可以从屏幕一边拖入的导航视图 statusBarBackgroundColor color 使抽屉导航覆盖整个屏幕,并绘制状态栏的背景,使其能够覆盖到状态栏

2.4K70
领券