使用uibutton ios的表视图披露指示器样式

VBK*_*VBK 42 uibutton ios

我有一个自定义视图,我想模仿表视图单元格中找到的披露指标.这可能吗 ?无论如何提取该图像?

Ava*_*rio 85

这可以通过将UITableViewCell披露指示符放在以下内容中完全使用代码完成UIButton:

UITableViewCell *disclosure = [[UITableViewCell alloc] init];
disclosure.frame = button.bounds;
disclosure.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
disclosure.userInteractionEnabled = NO; 

[button addSubview:disclosure];
Run Code Online (Sandbox Code Playgroud)

迅速:

let disclosure = UITableViewCell()
disclosure.frame = button.bounds
disclosure.accessoryType = .disclosureIndicator
disclosure.isUserInteractionEnabled = false

button.addSubview(disclosure)
Run Code Online (Sandbox Code Playgroud)

  • 有点难看,但它的工作原理并确实能提供所需的效果(操作系统映像),而无需添加自定义图像.+1 (7认同)
  • 不要在iOS 8中尝试此操作,因为您将收到以下错误:***由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'必须将自动调整掩码转换为约束以使_setHostsLayoutEngine:YES.' 每当您将UITableViewCell或单元子类添加到非UITableView UIView/UIView子类时,就会发生这种情况.请参阅相关文章:http://stackoverflow.com/questions/24217195/why-do-i-get-must-translate-autoresizing-mask-into-constraints-to-have-sethost (7认同)
  • 这个解决方案适用于8.1,Swift和Xcode 6.2.我尝试使用translatesAutoresizingMaskIntoConstraints为true和false,两者都没问题. (3认同)
  • 也许有点难看,但比使用自己的图像要好得多,因为前向兼容性. (2认同)

fl0*_*034 18

由于Apple 为不同的工具提供官方iOS设计资源,您可以从那里提取雪佛龙.

  • 为什么哦为什么这不是公认的答案?! (3认同)

mev*_*dev 12

请注意,您必须使用透明背景

在photoshop文件中,这是我能得到的最佳匹配:

请注意,它包含下面的REAL iOS IMAGE(来自屏幕截图)作为图层,因此您可以进行比较.

http://www.filedropper.com/fakearrowiosnov2013psd


似乎VBK想要UITableView系列中的单个V形臂.这被称为"披露指标",而不是UIButton提供的" 详细披露".

我想你想要这样的东西:

按钮的UITableView Disclosure指示器图像

它是50x80,背景透明.在按钮或UIImageView上使用此图像.将其大小调整为您希望按钮的大小.Apple建议命中目标不低于40x40.我在故事板中将其大小设置为10x16,但我使用透明按钮覆盖,因此大小无关紧要.

Image Mirror:http://imgur.com/X00qn0Z.png


但请注意,这并不是iOS7中使用的图像.(2013年11月.)要获得准确的图像,只需在模拟器中运行视网膜中的应用程序,并制作屏幕截图.