gpt4 book ai didi

ios - OnEditingStarted 在 iOS 7 中提高了两次

转载 作者:行者123 更新时间:2023-11-29 03:18:59 26 4
gpt4 key购买 nike

我在我的 monotuch iOS 应用程序中使用以下代码来创建位置搜索机制:

    public override void ViewDidLoad ()
{
NavigationItem .TitleView = LocationSearchBar ;
LocationSearchBar .OnEditingStarted += delegate {

if(lSAutoCompleteScreen ==null)
lSAutoCompleteScreen = new LSAutoCompleteScreen ();
lSAutoCompleteScreen .DefaultText = LocationSearchBar .Text;
this.NavigationController .PushViewController (lSAutoCompleteScreen,true );

};
}

第一次,代码工作正常。当用户开始编辑搜索栏时,应用会显示 lSAutoCompleteScreen。用户搜索并在搜索用户后返回主视图。但问题是现在。当您再次开始编辑时。现在 OnEditingStarted 事件触发了两次!所以应用程序尝试将 lSAutoCompleteScreen 添加到 NavigationController 两次。在他第二次尝试添加应用程序时会崩溃。因为添加堆栈中已有的 View Controller 是无效的。

所以问题是为什么这个事件要触发两次?以及为什么仅在 iOS7 中事件会触发两次。在 iOS6 中它只触发一次。

最佳答案

每次加载 View 时,您都会向 OnEditingStarted 添加一个处理程序。尝试在类构造函数中分配处理程序,这样它只会分配一次。

关于ios - OnEditingStarted 在 iOS 7 中提高了两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21353382/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com