我正在尝试在Objective C中为iOS实现类似的功能。
填空(UITextField
)应该是内联的,并且应该能够拥有自己的inputType。
此外,每个视图都是cell.contentView
的{{1}}类型。
我目前的方法是找到字符串的长度,并计算包裹内容的长度到下一行。计算UITableViewCell
的{{1}}和x
,并在y
UITextField
除此之外还有其他方法吗?
答案 0 :(得分:2)
正如EmilioPelaez所说,这不是你问题的答案,而是一个建议:
您可以为每个“序列”使用具有水平流的集合视图(即UILabel-UItextfield-etc. ...)
该集合视图有两种单元格:
加上:
我目前的做法是找到字符串的长度,并计算包裹内容的长度到下一行。
您可以轻松调整不同单元格的宽度,隐藏uitextfield(如果需要)并显示更动态的“序列”(如果需要)
答案 1 :(得分:1)
这不是您问题的答案,而是建议进行不同的互动。
我认为不是使用内联textFields,而是使用带有属性字符串的UILabel,并且在textFields的位置,你可以添加一个不同的颜色,你可以点击它(例如,这个角色✚) )。
点击时,您可以显示带有文本输入的叠加层,一旦完成输入,您就可以使用文本更新标签(仍可点击,并使用不同的颜色)。
我认为这个答案可能也很重要:Detecting taps on attributed text in a UITextView in iOS
答案 2 :(得分:0)
我认为你的UILabels分离和计算所需位置的解决方案对于低于iOS9的版本来说是一个很好的解决方案,但如果你可以依靠iOS,UIStackView可以大大简化你的流程。您可以在本教程中阅读有关该过程的更多信息: UIStackView Tutorial
祝你好运!