我目前正在开发一个 iPad 应用程序,并希望对我的视图控制器进行函数调用,以在对象移动到某个位置的事件上切换视图。在“touchesMoved”和“touchesEnded”中,如果对象被拖到某个位置,我尝试在视图控制器中调用一个函数来切换视图,但该函数似乎从未被调用。
例如,“touchesEnded”相当简单,只是调用视图控制器,消息被记录在 touchesEnded 内部,而不是应该被调用的视图控制器函数内部。我尝试在调试器中单步执行该函数,但它似乎只是越过了它。
从视图*注意 m_pJupiter 是 UIImageView,m_pLevelID 是 NSString,m_pMyVC 是我的自定义视图控制器类的实例。
- (void) touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
if (m_pJupiter.center.x >= (m_pDest.center.x - 25))
{
NSLog(@"Calling beginGameWithLevelID");
[m_pMyVC startGameWithLevelID: m_pLevelID];
}
}
视图控制器的功能
- (void) startGameWithLevelID:(NSString*)pLevelID
{
NSLog(@"MyViewController - beginGameWithLevelID");
// The logic for switching views, etc
}
第一条日志消息总是出现,但视图控制器中的消息永远不会出现。我在想更糟糕的情况,我只会使用自定义 UISlider,但这一直让我烦恼。