ios - Objective-C 以编程方式呈现模态序列
<p><p>我在我的 Storyboard中创建了一个现在的模态序列,如下图所示。</p>
<p> <a href="/image/Q7hx5.png" rel="noreferrer noopener nofollow"><img src="/image/Q7hx5.png" alt="enter image description here"/></a> </p>
<p>我的第一个场景有一个带有 Action 的按钮:</p>
<pre><code>- (IBAction)loginButtonPressed:(id)sender {
;
}
</code></pre>
<p>进入这个方法:</p>
<pre><code>- (void)Login
{
NSString *rawString = ;
NSCharacterSet *whitespace = ;
];
[userName UserLogin:self.idTextField.text andPassWordExists:self.passwordTextField.text completionHandler:^(id responseObject, NSError *error) {
if (responseObject != nil) {
NSString *userN,*name;
NSArray *object = ;
userN = ;
name = ;
self.idTextField = nil;
self.passwordTextField = nil;
LHAppDelegate *appDelegate = (LHAppDelegate *)[ delegate];
];
;
}else{
;
}
;
;
indicatorView = nil;
;
loadingView = nil;
}];
}
</code></pre>
<p>我正在尝试做的是编程,因此当用户登录时,它们会以模态方式出现在标签栏 Controller 中。</p>
<p>目前,当我点击带有错误凭据的按钮时,我会看到我的自定义警报,但它仍然会将我带到标签栏 Controller 。</p>
<p>基本上我想做的是围绕当前的模态转义设置一个条件。这可能吗?</p>
<p>我找到了这段代码:</p>
<p><code>;</code></p>
<p>我将它添加到我的登录方法中:</p>
<pre><code>- (void)Login
{
NSString *rawString = ;
NSCharacterSet *whitespace = ;
];
[userName UserLogin:self.idTextField.text andPassWordExists:self.passwordTextField.text completionHandler:^(id responseObject, NSError *error) {
if (responseObject != nil) {
NSString *userN,*name;
NSArray *object = ;
userN = ;
name = ;
self.idTextField = nil;
self.passwordTextField = nil;
LHAppDelegate *appDelegate = (LHAppDelegate *)[ delegate];
];
;
;
}else{
;
}
;
;
indicatorView = nil;
;
loadingView = nil;
}];
}
</code></pre>
<p>当我使用错误的凭据登录时,它仍然会将我带到标签栏 Controller </p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>在上述场景中,它将始终执行不受服务器响应影响的 segue,因为 segue 是通过按钮单击执行的。
为避免这种情况,请按以下方式进行:</p>
<ol>
<li>删除从按钮到 UITabBarController 的 segue 并使其
从 ViewController 到 UITabBarController(从 View 拖动
Controller 到其他 ViewController )。</li>
<li><p>现在,当您响应成功时,请调用以下电话</p>
<p><code></code></p></li>
</ol>
<p>如果要传递参数,请执行以下功能:</p>
<pre><code>-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
</code></pre></p>
<p style="font-size: 20px;">关于ios - Objective-C 以编程方式呈现模态序列,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/31858751/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/31858751/
</a>
</p>
页:
[1]