iphone SDK:如何检查用户设置的有效IP、网络掩码、路由器?
看了这张图就很容易理解了。
我在表格视图中添加了一些文本字段,
我已经将键盘样式设置为数字键盘。
现在的问题是
1.我需要创建12个文本字段吗? UITextField *ip1,ip2,ip3,ip4....
或者只是为文本字段设置不同的标签?
2.如何检查用户输入的错误字符不是3个有效数字
(即使键盘设置了数字键盘,但它可能会粘贴文字...)
3.如何检查用户是否遵循此设置规则???
<1>如果IP1为0~223,则IP2需要设置为0~255,IP3、IP4均为0~255
<2>如果IP1为172,则设置IP2 16~31.IP3、IP4均为0~255; 如果IP1为192,IP2必须为168。IP3 IP4均为0~255
<3>网络掩码设置默认255.255.255.0
<4>路由器0~223 ,0~255 ,0~255 ,0~255
此IP设置规则我的朋友给我技术了吗...我不确定规则是否正确?
--------ADD---------
哦....抱歉,我需要添加有关静态 IP 的更多信息
此静态 IP 设置是为一些硬件设备,例如 IP 摄像头
,因此不需要粘贴 URL
It is simple to understand after this pic.
I add fewtextfields in tableview
I already set the keyboard style is number pad.
Now the problems is
1.Do I need to create 12 textfields ???ex. UITextField *ip1,ip2,ip3,ip4....
or just set different tag for textfield ?
2.How to check user enter wrong char not 3 valid numbers
(even the keyboard is set number pad,but it might can paste words...)
3.How to check user did follow this setting rules ???
<1>If IP1 is 0~223 , IP2 need to be set 0~255,IP3,IP4 both are 0~255
<2>If IP1 is 172 ,IP2 is set 16~31.IP3,IP4 both are 0~255;
If IP1 is 192 ,IP2 must be 168.IP3 IP4 are 0~255
<3>Netmask set default 255.255.255.0
<4>Router 0~223 ,0~255 ,0~255 ,0~255
This IP setting rules is my friends tech me this ...I not sure the rules is right or not?
--------ADD---------
Oh....Sorry , I need to add more information about is static IP
This static IP setting is set up for some hardware device ,ex IP cam
so it won't need to paste a URL
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我鄙视那些强迫我将 IP 地址的各个部分键入单独字段的程序。输入地址很尴尬,最糟糕的是我无法粘贴或粘贴 IP 地址。只需为每个地址使用一个字段,并验证用户输入的内容。
要手动验证,请拆分
'.'
上的条目并测试每个子字符串是否正确转换为 [0, 255] 范围内的整数。您可以更精确地检查,但如果目的是连接到现有网络,请检查第一个组件是否 <<如果用户错误地输入了 213 而不是 123,则 224 根本没有帮助。I despise programs that force me to type the components of an IP address into separate fields. It is awkward to type addresses in, and worst of all I can't paste IP addresses in or out. Just use a single field for each address, and validate what the user enters.
To validate manually, split the entry on
'.'
and test that each substring correctly converts to an integer in the range [0, 255]. You could check more precisely, but if the intent is to connect to an existing network, checking that the first component is < 224 won't help at all if the user incorrectly typed 213 instead of 123.