我的应用程序询问用户是 - 否问题,用户使用屏幕上的 uiswitch 回复。我一直在考虑创建一个自定义版本的开关,它将显示是/否而不是开/关,并将使用绿色/红色背景作为值的指示器。创建模型后,我不太确定这是要走的路。使用默认开关感觉不对,但更改太多也是如此。你怎么看?
3 回答
这真的取决于; 一些自定义应用程序具有非常自定义的 UI(例如 ConvertBot),并且非常适合它们。风险有时值得付出努力。在其他情况下,自定义小部件会破坏可用性。我不认为将“开/关”更改为“是/否”是开创性的,如果你做对了,你可以毫无问题地完成它。
我认为如果你的模型做得更好(滑块应该分成两部分,YES 和 NO 的长度相等,两边的填充相同)它看起来会更好一些。
从用户界面的角度来看,这是一个坏主意。人们已经学会了默认开关,为什么现在要改变它呢?
此外,您还冒着向您的应用程序添加以前不存在的另一个错误来源的风险。
根据应用程序,这可能非常有效。当然人们已经习惯了默认控件,但是更改文本或颜色不会破坏用户对这些控件的理解。它下面仍然是同一个开关。
在您的示例中,您同时为是/否着色。这是我唯一担心的是您确实更改了核心交换机的工作方式。通常,它适用于突出显示的颜色和灰色。因此,让它在两个选项上都保持颜色可能会令人困惑。
无论如何,如果您想以这种方式构建您的应用程序,您应该这样做。仅仅因为 iPhone 提供了出色的默认控件并不意味着开发人员不应该创新并添加他们自己的控件或将默认控件提升到一个新的水平。
看看我构建的自定义 UISwitch 控件,它允许我更改控件的背景颜色。您可以使用相同的方法非常轻松地更改文本、字体或文本颜色。
http://www.homick.com/posts/custom-uiswitch-control
该代码可在 Github 上找到,其中包含一个 PSD,用于构建控件使用的三个不同的 png 文件。您可以修改 psd 的内容,以您喜欢的任何格式重新创建 png 文件。将它们交换到控件中,然后离开。