2012-07-02 35 views
1

我不確定這是否是一個錯誤。MonoTouch.Dialog:在搜索上啓用ScopeButton將刪除搜索事件

在MonoTouch.Dialog使ScopeButton及導線上指數漲跌事件:

 UISearchBar sb = TableView.TableHeaderView as UISearchBar; 
     sb.ScopeButtonTitles = new string[] { "Full Text".t(), "Titles".t() }; 
     sb.ShowsScopeBar = true; 
     sb.SizeToFit(); 
     sb.SelectedScopeButtonIndexChanged += (sender, e) => { 
      CreateRoot(sb.Text); 
     }; 

然後在乘坐搜索功能:

public override void FinishSearch() 
    { 
     //do nothing, leave the UI 
    } 

    public override void OnSearchTextChanged(string text) 
    { 
     CreateRoot(text); 
    } 

    public override void SearchButtonClicked(string text) 
    { 
     //Do nothing, leave the UI 
    } 

的結果是OnSearchTextChanged永遠不會觸發。

如果你刪除了下面的行,它會觸發並且工作得很好。

//Remove to re-enable SearchButtonClicked 
sb.SelectedScopeButtonIndexChanged += (sender, e) => { 
CreateRoot(sb.Text); 
}; 

注意:如果你通過子視圖訪問搜索欄的UISegment控制,它工作正常,這樣

foreach (UIView v in sb.Subviews) 
    { 
     var seg = v as UISegmentedControl; 
     if(seg!=null) 
     { 
      CreateRoot("Some text"); 
     }; 
     break; 
    } 
+0

我剛注意到完全一樣的東西。我的搜索把我帶到這裏:) – Kevin

+0

獲取最新的MTD,它在那裏修復 –

回答

0

這是固定在MOnotouch.dialog的最新構建