ios - 在选项卡式应用程序中更改选项卡后运动功能不起作用
<p><p>我很新。</p>
<p>我正在开发一个选项卡式应用程序。</p>
<p>我想拥有一个带有摇动功能的标签,并入</p>
<pre><code>- (void)motionBegan:(UIEventSubtype)motion withEvent:(UIEvent *)event
{
if (event.subtype == UIEventSubtypeMotionShake)
{
NSLog(@"shook");
}
}
</code></pre>
<p>这工作得很好,直到我从这个 FirstViewController 切换到另一个然后回来。一旦我返回 FirstViewController,shake 功能似乎根本不起作用。有什么想法吗?</p>
<p>我确实有以下其他组件</p>
<pre><code>- (BOOL)canBecomeFirstResponder
{
return YES;
}
- (void)viewDidAppear:(BOOL)animated
{
;
;
}
-(void)viewWillDisappear:(BOOL)animated
{
;
;
}
</code></pre></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>似乎每次在选项卡之间切换时都不会调用 viewDidAppear:<a href="https://stackoverflow.com/questions/2758798/viewdidappear-for-tabbar-based-apps" rel="noreferrer noopener nofollow">viewDidAppear for tabbar based apps</a> </p>
<p>按照那里的答案建议,实现 UITabBarController 委托(delegate) <em>didSelectViewController</em> 并调用 ViewController 的 viewDidAppear 方法。</p>
<p>或者仍然实现委托(delegate),只检测选择的 ViewController ,如果是FirstViewController,调用方法<em>canBecomeFirstResponder</em>。</p>
<p>例如,如果您已将 FirstViewController 声明为标签栏的属性:</p>
<pre><code>- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController{
if (]) {
;
}
}
</code></pre></p>
<p style="font-size: 20px;">关于ios - 在选项卡式应用程序中更改选项卡后运动功能不起作用,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/16997254/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/16997254/
</a>
</p>
页:
[1]