从代码ios访问表视图单元格中的分段控件

从代码ios访问表视图单元格中的分段控件,ios,uisegmentedcontrol,Ios,Uisegmentedcontrol,我使用story board创建了一个分段控件。我想从代码更改它的高度。如何实现这一点?因此,传统的方法是设置分段控件的“标记”,以便在tableView委托中,您可以通过发送单元格“[cell.contentView viewWithTag:theTagNumber];”来访问它我无法确切地告诉您如何使用story board创建的应用程序,因为我不使用story board 所以一旦你有了控件,你就改变了它的框架。我不确定它会是什么样子,但这就是你的做法: UISegmentedContro

我使用story board创建了一个分段控件。我想从代码更改它的高度。如何实现这一点?

因此,传统的方法是设置分段控件的“标记”,以便在tableView委托中,您可以通过发送单元格“[cell.contentView viewWithTag:theTagNumber];”来访问它我无法确切地告诉您如何使用story board创建的应用程序,因为我不使用story board

所以一旦你有了控件,你就改变了它的框架。我不确定它会是什么样子,但这就是你的做法:

UISegmentedControl *control = (UISegmentedControl *)[cell.contentView viewWithTag:theTagNumber];
CGRect r = control.frame;
r.size.height = 50; // whatever you want
control.frame = r;

嗯。实际上它是一个静态表,所以我没有访问单元格函数的权限。所以静态是指在初始化过程中创建所需的单元格,而不是在表格滚动等过程中“动态”创建。答案仍然是相对的-每个单元格中的每个控件都需要一个标记。如果可以获得指向cell对象的指针,则可以使用上面详述的方法找到控件。如果由于某种原因无法设置标记,则可以遍历cell.contentsView.subViews并查找通过“[view isKindOfClass:[UISegmentedControl class]]”的对象,但标记是一种更好的方法。基本上,我从故事板创建了一个静态表视图。但由于某些原因,它不允许我调整单元格中分段控件的高度。所以我想知道如何从代码调整它的大小?谢谢。很明显,你需要在创建单元格后执行此操作。因此,可能是viewDidLoad和ViewWillExample。如果不这样做,那么您可能需要将自己设置为表委托,然后在“willPresentCell”中执行此操作-在显示单元格之前有一些委托回调。我是否需要以某种方式重新添加控件,或者上面的代码是否足够?