小编Ada*_*ack的帖子

UISearchController的UISearchBar的光标显示首次使用,而不是后续

第一次应用程序的这部分加载搜索控制器的搜索栏的光标显示,根据需要.

用光标搜索

(问题)当搜索被解除然后(稍后)重新编码时,没有光标:

搜索无光标

这是可重复的,只是加载/解除,即没有任何显然可以/应该改变事物的色调,导致光标是背景的颜色(通常是缺少光标的答案,从我看到的SO Q&As)这个话题.)也就是说,没有别的东西不能工作,只是光标消失了.

一些(可能)复杂因素:

  • 这个加载/卸载UISearchController的ViewController(并将UISearchBar嵌入到UINavigationController的标题中)是我的自定义容器VC中的内容VC.层次结构是:(1)UIWindow(2)UINavigationController(3)ContainerVC(4)ContainedVC [parent是ContainerVC,这个VC正在进行UISearchController的加载/卸载].
  • 有各种委托回调(UISearchController,UISearchBar)尝试自定义行为(例如隐藏取消按钮,停止之间的关闭),希望这些行为不会对事情产生影响,但仅限于FYI.
  • "卸载"(停止/拆除)涉及各种努力使其消失,从标题视图中删除搜索栏,设置搜索控制器active = false等.(因为它发生在此之后,它感觉可能是相关的,所以我尝试了各种排列以防万一有什么帮助.没有这样的运气.)

我已经做了各种尝试让孩子VC创建它自己的SearchController,和/或在根VC上使用它,依此类推.各种排列似乎都有效,但同样存在缺陷.(因此,我觉得我在寻找问题/解决方案来源的错误位置.)

我不能排除光标颜色已经改变,我不完全理解它是如何设置/继承的,特别是考虑到我拥有的VC堆栈,以及如何在调试器中测试它.我认为这就像我设置全局色调一样简单.

注意:这个程序是用故事板直接设置,并没有使用外观代理.这说它有:

    // Default tint for application...
    UIApplication.sharedApplication().delegate?.window??.tintColor = mainBrandColor
    UIToolbar.appearance().tintColor = mainBrandColor
Run Code Online (Sandbox Code Playgroud)

...我尝试过UISearchBar的各种排列,UINavigationBar色调通过外观代理w /相同的行为(首先工作,后来没那么多.)在不同时间,(即工作时和不工作时)看这个显示相同的颜色:

(lldb) po searchController.searchBar.tintColor
Run Code Online (Sandbox Code Playgroud)

注意:单独使用UISearchController(当调用VC不是容器的子代,而是推送VC时)并不能证明这个问题.光标保持正确的颜色.

环境:这是Swift on XCode 7.1上的iOS9.x应用程序.

这是一些代码,其中homeVC是父/容器VC:

    if nil == homeVC.searchController {
        homeVC.searchController = UISearchController(searchResultsController: nil)
        homeVC.searchController!.searchResultsUpdater = self
        homeVC.searchController!.delegate = self
        homeVC.searchController!.searchBar.delegate = self
        homeVC.searchController!.searchBar.showsCancelButton = false
        homeVC.searchController!.searchBar.returnKeyType = .Done
        homeVC.searchController!.searchBar.placeholder = "Add Item"
        homeVC.searchController!.searchBar.searchBarStyle = UISearchBarStyle.Minimal
        homeVC.searchController!.dimsBackgroundDuringPresentation = false
        homeVC.searchController!.hidesNavigationBarDuringPresentation = …
Run Code Online (Sandbox Code Playgroud)

uiviewcontroller uisearchbar ios swift uisearchcontroller

10
推荐指数
1
解决办法
2672
查看次数

UITableView"批量选择"未在选择圈中显示选中的选中标记,显示右侧选中标记不在左侧

我试图在iOS8 Swift应用程序上重现此行为(请参阅下面的屏幕截图,"mail multiple select to delete"行为).设置为"编辑"时,会显示左侧选择圈,但在选择时,它们不会更改为蓝色复选标记.(没有任何可见的事情发生,或者它发生在正确的...屏幕外.)

从各种谷歌搜索中我尝试将accessoryType设置为复选框,但是它出现在右侧(而不是左侧).[这是一个老建议,是否还要添加一个复选标记?

我已经搜索过这个样本(甚至下载并运行它并将其调整到我的代码附近,并且它可以工作)但是我看不到它和我的应用程序之间的差异.

一些数据点:

  • Xcode 7
  • iOS8 +(8和9测试)
  • Swift 2.0
  • tableview等的故事板配置
  • 自定义布局单元格 他们使用内容视图查看某些文本,外面没有任何内容.自动布局.
  • 不编辑时单选(或者我相信)
  • 编辑时多重选择(以获得此效果.)
  • 对于大多数(不是所有)单元格,DataSource返回canEdit"true".圈子仅显示在那些可编辑的匹配期望旁边.
  • Delegate没有返回任何"编辑样式"值.(试过w /&w/o.)
  • 委托不会在"didSelect"处理程序中取消选择.
  • 当我尝试将accesoryType设置为didSelect中的Checkmark(许多帖子建议,但我在样本中没有看到它)时,它出现在右侧而不是左侧.

其他StackOverflow问题/答案意味着某些事情导致UITableView无法知道左侧的复选标记不是右侧.我可以相信,但我找不到它.任何帮助赞赏.

期望的效果(来自样本截图):

https://developer.apple.com/library/ios/samplecode/TableMultiSelect/Introduction/Intro.html

样本中的蓝色复选框选择

表设置

故事板中的表设置

表格单元格设置

故事板中的表单元格设置

uitableview ios swift

7
推荐指数
1
解决办法
4295
查看次数

对于铁路网站哪个更好?/ {login}或/ user/{login}

哪个更好(对于用户,对于长寿,对于性能,对于任何事情)具有:

http:// {site}/{login}例如http://wildobs.com/adam_jack

要么

HTTP:// {网站} /用户/ {登录}

前者的优点:

  • 用户感觉更特别.
  • 网址较短.

前者的缺点:

  • 无法让用户登录匹配关键字,关键字可能会随着时间的推移而增长.

显然,这对于正确(或错误并坚持)很重要,因为所有用户定义的URL都基于它.改变它似乎是网站自杀.

缺点(特别是随着时间的推移)是否超过职业选手?

url friendly-url namespaces ruby-on-rails

5
推荐指数
3
解决办法
437
查看次数

完成iPhone文本输入和DONE按钮(不搜索)

使用iPhone SDK 3.0,我希望允许带有(可选)完成选项的文本输入,这些选项在输入时出现,即也允许自由格式输入.因此我使用UISearchBar(具有文本更改事件)和UISearchDisplayController来呈现选项.

问题是我想要DONE按钮说DONE而不是SEARCH,但我找不到设置方法.显然我觉得我遗漏了一些东西,或者SDK API的Interface Builder会有一些属性要设置.

我已经看到其他应用程序(在商店中)已经达到了我想要的结果(自由格式输入,完成,完成按钮)所以也许有一种我缺少的替代方法.提前感谢任何指针.

uikit uisearchbar iphone-sdk-3.0 uisearchdisplaycontroller

2
推荐指数
1
解决办法
2129
查看次数