[英]how can you create a login screen like the iPhone facebook app?
iPhone的Facebook应用程序有一个很好的用户名/密码设置,它几乎看起来像UITextField在两行内的uitableview,这是怎么做的? 或者这完全不同于它?
如果是tableview,一旦用户点击Login按钮,如何访问tableview内的文本字段? 有没有快速的方法来迭代tableview中的单元格?
一个简单的,我知道,但如果我不需要,我不想实现精心设计的tableview ...
来源 : https : //github.com/c99koder/lastfm-iphone
编辑:您可以自定义UITableViewCell并在其中放置UITextField。 但是,有一种更简单的方法可以实现这一点,因为登录/注册页面几乎总是静态的。 见下文。
LastFM for iPhone使用了类似的登录/注册页面设计。 他们开源了他们的代码。 看看nib文件,你就会知道LastFM是如何做到这一点的。 :-)
创建一个tableview控制器并转到xib文件 - > attributes inspector-> tableview并选择“group styled”而不是plain。 然后,您可以通过添加用户名和密码的文本字段来自定义代码中的tableview单元格。 然后创建一个新的UIView并将视图设置为tableview的页脚视图以获取登录按钮。
有关相同的更多解释,请查看此问题的答案。
它看起来根本就没有使用UITableView
(否则,你可以上下滚动页面)。 它只是两个UITextField
不是自定义背景(或自定义背景)。
现在,如果您想使用UITableView
,您可以做的是将UITextField
存储为UITableViewCell
的变量。 然后,当用户单击登录按钮时,您只需从UITextField
获取text
值。
但是,再次,如果你想模仿Facebook的外观,你不需要打扰UITableView
。
希望这可以帮助!
好了,既然我理解了你的问题(感谢@Jonathan!),是的,它确实看起来像是一个使用UITextField的自定义UITableViewCells的tableview。
使用UITextField创建自定义单元格后,您可以将视图控制器指定为UITextField委托,并通过委托方法访问各个点的值:
– textFieldShouldBeginEditing:
– textFieldDidBeginEditing:
– textFieldShouldEndEditing:
– textFieldDidEndEditing:
例如,在textFieldShouldReturn:
,您可以使用以下命令获取对该单元格的indexPath的引用:
NSIndexPath *indexPath = [self.loginTable indexPathForCell:(MemberLoginCell*)[[textField superview] superview]];
然后到细胞:
MemberLoginCell *cell = (MemberLoginCell*)[self.loginTable cellForRowAtIndexPath:indexPath];
或者只需获取textField.text
值并将其分配给NSString,该NSString可以根据需要传递给您的LOGIN方法。
我知道已有一个已接受的答案,但我使用UITableView创建了一个facebook类型的登录页面。 该代码是在这里在github
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.