【问题标题】:iphone SDK: How to check user set up a valid IP , Netmask , Router?iphone SDK:如何检查用户设置的有效 IP、网络掩码、路由器?
【发布时间】:2011-03-14 08:06:01
【问题描述】:

看完这张图就很容易理解了。

我在表格视图中添加了几个文本字段

我已经设置了键盘样式是数字键盘。

现在的问题是

1.我需要创建 12 个文本字段 ???ex. UITextField *ip1,ip2,ip3,ip4....或者只是为文本字段设置不同的标签?

2.如何检查用户输入错误的字符不是3个有效数字

(即使键盘设置了数字键盘,但它可能会粘贴文字......)

3.如何检查用户是否遵守了这个设置规则???

如果IP1是0~223,IP2需要设置0~255,IP3,IP4都是0~255

如果IP1为172,则IP2设置为16~31.IP3,IP4均为0~255; 如果IP1是192,IP2必须是168.IP3 IP4是0~255

网络掩码设置默认255.255.255.0

路由器 0~223 ,0~255 ,0~255 ,0~255

这个IP设置规则是我的朋友给我这个...我不确定规则是否正确?

--------添加---------

哦....对不起,我需要添加更多关于静态 IP 的信息

此静态 IP 设置是为某些硬件设备设置的,例如 IP cam

所以它不需要粘贴 URL

【问题讨论】:

  • 您可以(或应该?)从 IP 地址派生默认网络掩码...例如无论是 A、B、C 还是 D 类地址...尽管取决于您的实际用例,这可能不是一件好事。
  • 让我搜索一下是否可以找到任何相关信息
  • @Romain 不,你应该这样做。早在 90 年代初,“有类”IP 地址就被弃用了。

标签: iphone ios sdk uitextfield ip


【解决方案1】:

我鄙视强迫我将 IP 地址的组成部分输入单独字段的程序。输入地址很尴尬,最糟糕的是我不能粘贴或粘贴 IP 地址。只需为每个地址使用一个字段,并验证用户输入的内容。

要手动验证,请拆分 '.' 上的条目并测试每个子字符串是否正确转换为 [0, 255] 范围内的整数。您可以更精确地检查,但如果意图连接到现有网络,如果用户错误地键入 213 而不是 123,则检查第一个组件是否

【讨论】:

  • 我知道,但是我老板他要我分开字段,我一开始是单字段的......
  • @WebberLai,你需要教你的老板,而不是反过来;-)
  • 告诉你的老板,在 iPhone 上不仅将 IP 地址输入单独的字段更烦人(没有 Tab 键,而且从另一个应用程序复制粘贴或在心里抄录一个的想法会让我不寒而栗),但苹果自己不这样做。向您的老板展示如何通过 Wi-Fi 网络配置设置静态 IP。
  • 实际上可以通过在字段上添加一些额外的行为来减轻或完全消除鄙视:当用户输入三个数字或键入一个点时,跳转到下一个字段。如果用户回击并且在空白字段中,则跳转到前一个并删除一个字符。
  • @WebberLai:您可以使用this trick 在数字键盘上添加一个. 按钮。但这是浪费精力。只需给用户一个普通的字母键盘——切换到数字模式,就像苹果在 Wi-Fi 设置中所做的那样——然后就可以完成了。任何事情都过于复杂了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-12-14
  • 2010-12-31
  • 1970-01-01
  • 2010-10-09
  • 2016-12-27
  • 1970-01-01
  • 2015-04-11
相关资源
最近更新 更多