做交互设计时,按钮大小如何规范

做交互设计时,按钮大小如何规范,第1张

做界面交互设计的时候,有个看似简单但依然容易引起撕逼的问题——按钮到底得做多大。无论是面对美术同学设计的各种精美小巧细如针尖的按钮,或是策划同学各种“加加加”的需求轰炸,还是老板“大大大”的呼喊,最终还是需要落地——按钮这玩意,多大才是大,多小才算小。这个时候,就需要一套设计规范和标准,但也要言之有理,让人心服口服地遵守。

本文就介绍一个简单快速的入门,让大家了解到按钮大小设计的逻辑,还有到底应该设多少大小的问题。

事先说明:本文介绍的每一节的课题,都是值得交互设计们深入研究的。本文从简单入手,讲究快速实用,摒弃容易混淆新人的长篇大论,但还是建议能查阅网上的相关资料,才能更加深入地了解这方面的知识,希望能帮助到大家。

1、菲茨定律(Fitts’s Law)

关于按钮到底做多大,有一个很牛逼的公式,称为菲茨定律:

其中:

MT=完成点击的时间,理论上来说越小越好

a、b 是变化参数,不知道有什么用

A = 起点到目标中心的距离,也就是手指移动到按钮的距离

W = 目标在运动轴线上的宽度,也就是按钮的大小

作为一个文科生对于任何数学公式都是拒绝的,有兴趣的同学可以百度详细研究。列出这个公式的目的是,让大家了解到,我们所谓的“按钮手感”,是由哪几个参数影响的。

不想研究这个公式的同学,可以直接看对这个公式的解读(翻译):

1)按钮越大,越容易被点中(这个有点像废话)。

2)尺寸小的按钮,只要增大微小一点,对可点击性就增加很多。

对第二点的理解就是,按钮做得太小是很可怜的,牺牲任何东西都不能牺牲按钮大小

3)随着按钮的增大,可点性增幅降低

同样,一味无脑地增大按钮尺寸,并不能带来体验感的同样幅度的提升,差不多就好。

4)按钮过大,不会显著增加精度,但会降低速度

按钮过大带来的好处会越来越小,而且会带来另外新的问题——想象一下:拿着一个硕大无比如同桌子一样大小的手柄,肯定不如正常尺寸的好。

本节get:菲茨定律是一个很牛逼的定律,想深入研究可以看知乎上的一篇文章(传送门: https://zhuanlan.zhihu.com/p/25530956 )。

2、不要废话直接给结论吧

菲茨定律是原理,但最终结论是什么呢,到底要设置多大的按钮呢,有很多讲交互的书籍,有各种答案:

ISO标准:

标准尺寸——19mm*19mm(mm是尺寸单位,毫米)

最小尺寸——9.5mm

最低标准——6.4mm

按钮和按钮之间最小间距——3mm

iOS(苹果)标准:

1倍率设备——44*44dp(dp表示像素,根据苹果设备屏幕,换算下来约7mm)

安卓标准:

48dp(约为7.4mm)

微软标准:

115dp(约为9mm)

看了这么多标准,是不是有点懵?

实际上,目前没有一个统一的标准,没有人可以解释为什么9mm的按钮会比8mm的按钮好,熟悉微积分的同学应该知道,一个平滑的曲线是可以无限分割的,没有那个“好”与“不好”的明显边界。

不过,现在界面都要求精细化,按钮都偏向往小了做,所以9mm~15mm就已经算得上是大按钮了,6mm~9mm是普遍喜欢的区域。但做人要有底线,最好不要再低于6mm了,而且细小的按钮加上过密的排布和微小的间距,会更加加重“误触的灾难”。

另外补充一句,特别是游戏,一些重要的入口,是不在这个体系之内的。相信大家对于很多手游内一个硕大的“play”或“开始游戏”按钮的印象都不会陌生吧。

本节get:

大按钮9mm~15mm

小按钮6mm~9mm

请尽量保持在这两个标准内

3、什么是PPI

当有人说最合适的按钮是XX像素时,那么这个人不是外行就是太懒。在移动设备上,不谈设备直接说像素(px)应该是多少多少,都是没有意义的。

打开百度,查看PPI的解释——PPI是Pixels Per Inch缩写,pixels per inch所表示的是每英寸所拥有的像素(pixel)数目。简单的说,每个手机的PPI都不一样,所以你的手机的6毫米(mm),和我的手机的6毫米(mm),是不一样的,也就是对应的像素值(px)也是不一样的。

所以PPI没什么玄乎的,就是把第2节的毫米(mm)转成像素(px)的媒介,计算方法也很简单,像素=PPI*毫米值*0.03937就可以了,当然也可以弄个高大上的公式:

实际工作中,建议大家把一些主流的设备上的都列出来,等到要做的时候再算就会很繁琐,而且事先列出来有助于时刻遵守,做得多了也就不用再一一对着看了,自然而然就会有意识地去遵守,有点像“肌肉记忆”。

另外,大家也会接触到一个DPI的概念,这两个概念非常类似,甚至有一些地方都混为一谈。网上介绍DPI和PPI区分的文章很多,有兴趣的同学可以自行寻找学习,但是有一点个人的建议:如果你是做手机游戏和软件的界面设计的,可以只关注PPI,而无视DPI,不然大量的信息充斥进来,很容易混淆。

那么如何知道设备的PPI呢,很简单直接百度,或者自己也可以算,参考我这个公式:

通过计算发现iPhoneX和官方公布的数值略有差距,可能全面屏采用了一套不同的算法。

另外再最后啰嗦一句,其实很多项目,都是只有一个“设计分辨率”的,也就是GUI设计的时候,只是以一个分辨率作设计,其他分辨率只是进行适配,不太可能每个分辨率都单独进行一套设计。目前游戏主流的设计分辨率是1334*750(iPhone6),或是1920*1080(Plus设备)。

本节get:

根据设备的PPI,把物理大小(mm)转成像素(px),才有实际 *** 作设计的意义。

4、不同的位置对大小的影响

由于移动设备的小巧,所以其持握方式也会对按钮大小有要求,一般来说,离设备边缘的按钮应该设的更大一些,离设备越中间的按钮就可以放宽要求。

另外,如果是竖屏模式的游戏或软件,甚至是可以支持单手 *** 作的,最好在这个基础上增加1mm左右。具体原因是:

横屏 *** 作,和屏幕接触的主要还是大拇指指面,而横屏下,接触屏幕的很有可能是拇指指腹,从接触面积上来说,几乎少了一半。设置过iPhone指纹解锁的人应该知道,录入手指正面的指纹后,系统还需要我们录入指腹的指纹,这也是考虑到单手手持手机下,手指和指纹屏的接触情况。

5、其他解决办法

当然,规范是死的,实际情况还会有很多不得不违反规范的做法,为了让设计效果和实际体验折中妥协,我们还可以采取下列方法:

只牺牲一个维度(宽或高),也能达到较好的点按效果:

不怕小按钮,就怕小按钮扎堆,如果是并排密集的按钮,最好能预留出间距,防止误触:

上面那个3mm,放置在iPhone 8 Plus上对应的像素就是47,对应其他的设备也可以用上文介绍的方法计算出来。

让按钮的触控区域和按钮的实际尺寸脱钩,这个就需要程序做支持了,这是最一劳永逸的做法,可以应对各种不同的情况,但要注意一点:触控区域代替了按钮,执行响应的任务,那么触控区域本身就应该代替按钮,执行遵守上文所说的一系列规范了。

调整按钮大小需要事先取得设置按钮的长宽,然后使用getScaledInstance()方法重新构造图片,再构造Icon对象传入JButton中即可完成。

一、Java是什么

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

二、研发背景

Java是由Sun Microsystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。Java由James Gosling和同事们共同研发,并在1995年正式推出。Java最初被称为Oak,是1991年为消费类电子产品的嵌入式芯片而设计的。1995年更名为Java,并重新设计用于开发Internet应用程序。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Javaapplet。另一方面,Java技术也不断更新。Java自面世后就非常流行,发展迅速,对C++语言形成有力冲击。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。2010年Oracle公司收购Sun Microsystems。

三、主要组成

Java由四方面组成:

1.Java编程语言,即语法。

2.Java文件格式,即各种文件夹、文件的后缀。

3.Java虚拟机(JVM),即处理*.class文件的解释器。

4.Java应用程序接口(Java API)。

参考资料

Java.百度百科[引用时间2018-1-21]

你这行代码是没有问题的,你可以看下父元素是不是遮住了,

下面看我给你演示一下,这行代码的效果:

代码是完全复制的,效果是有改变的,

没有明显感觉到差异吗?那我吧input的行高改成200,行宽改成200看下

从上面两个实例

,我们可以看到你这行代码是没有问题的,题主可以把代码单独复制出来,编译即可看到效果,如果单独的效果有改变,那么需要进一步检查其他代码有没有问题,

如果有需要可以追问哦

input:

<input>

标签规定用户可输入数据的输入字段。

根据不同的

type

属性,输入字段有多种形态。输入字段可以是文本字段、复选框、密码字段、单选按钮、按钮等等


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存