iPhone:在自定义单元中同时更改多个段控制器的状态

发布于 2024-12-12 16:25:06 字数 492 浏览 0 评论 0原文

我有一个带有自定义单元格的 tableView(见下图)。

以三行表为例,如果用户将第 0 行中的段控制器更改为“是”,我可以自动更改第 1 行和第 1 行中的段控制器吗? 2 至“否?”

我正在使用以下内容来检测段更改:

- (void)seg_changed:(id) sender {

cell=(switchCell*) [[sender superview] superview];

UITableView *table=(UITableView*) [cell superview];

NSIndexPath *path=[table indexPathForCell:cell];

NSLog(@"been pressed %d si %d",path.section, path.row);

}

非常感谢。

在此处输入图像描述

I have a tableView with the custom cell (see image below.)

Taking a three row table as an example, if a user changes segment controller in row 0 to "Yes," can I automatically change the segment controllers in rows 1 & 2 to "No?"

I am using the following to detect a segment change:

- (void)seg_changed:(id) sender {

cell=(switchCell*) [[sender superview] superview];

UITableView *table=(UITableView*) [cell superview];

NSIndexPath *path=[table indexPathForCell:cell];

NSLog(@"been pressed %d si %d",path.section, path.row);

}

Much appreciated.

enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

甜扑 2024-12-19 16:25:06

在此方法中,您只需告诉其他段控制器将其值设置为“NO”即可。困难的部分是弄清楚另外两个控件在哪里。你必须努力追踪它们。

如果您的设计确保始终有两个以上带有分段控件的单元格,您只需通过增加 path.row 值即可访问正确的单元格。

此更改可以告诉您的数据模型某个值已更改,模型对象然后更新关联的值,并通知显示这些其他值的单元格。

您可以向此单元格类添加一个数组,以跟踪应通过此更改修改哪些其他单元格。

编辑:(回复评论)要更改分段控件上显示的设置,只需将 UISegmentedControl 的属性 selectedSegmentIndex 设置为适当的值即可价值。 “是”应为 0,“否”应为 1。

In this method you call just tell those other segment controllers to set their values to "NO". The hard part is figuring out where those two other controls are. You have to do the hard work of tracking them.

If your design ensures there are always two more cell with segmented controls you can just access the correct cells by incrementing the path.row value.

This change can tell your data model that a value has changed, the model object then updates the associated values, and notifies the cells displaying those other values.

You can add an array to this cell class that keeps track of what other cells should be modified with this change.

Edit: (to respond to a comment) To change the setting displayed on the segmented control just set the property selectedSegmentIndex of the UISegmentedControl to the appropriate value. "Yes" should be 0, and "No" should be 1.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文