我是iphone编程新手。我正在学习uitableview。我需要创建一个在桌面视图上方有按钮的应用程序(但不在导航栏中),就像在这个应用程序中一样(最近,支持,...):
这是如何实现的,按钮是表格标题的一部分?在有人按下tableview上方的按钮后,是否可以调用函数重新绘制具有新数据的tableview。怎么做?
谢谢。
答案 0 :(得分:2)
创建一个新的视图控制器,但不要选中UITableViewController子类的框。 在IB中,将uiTableView拖到视图上并使其从导航栏下方约44个像素开始。 然后将按钮拖动到该空间。在你的.h文件中声明你的IBOutlet变量,并将它们连接起来。
对于问题的第二部分:让按钮调用IBAction,然后调用该方法
[myTableView reloadData];
答案 1 :(得分:1)
按钮可以放在UITableView上方的绿色背景图像上(在上面的例子中),即您的tableview可以从放置按钮的绿色背景图像视图下方开始。
答案 2 :(得分:1)
您可以在init
方法或loadView
或您喜欢的任何地方执行以下操作:
UISegmentedControl *segment = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"Recent", @"Support", @"Around here", nil]];
segment.segmentedControlStyle = UISegmentedControlStyleBar;
self.tableView.tableHeaderView = segment;
[segment release];
答案 3 :(得分:0)
如果您不想在表格视图中滚动这些按钮,则可以在IB中添加它们,并在它们下方添加表格视图。为IB中的每个按钮分配标签。单击按钮后,检查您的操作(您已为按钮指定)以获取按钮标记,并根据其标记重新加载您的表。
如果要使用表格滚动它们,请在indexPath.row == 0添加它们。
这些按钮类型为自定义,并且这些图像设置为它们。
答案 4 :(得分:0)
你想要的实际上非常简单......
你有UITabBarController
UINavigationController
,还有UIViewController
等作为root控制器吗?然后在loadView / XIB中,您只需制作一个自定义UIView
,其大小,颜色等等。然后在此视图中附加UISegmentedControl
。然后,您将UITableView
放在自定义UIView
的底部。它只是一个垂直方向的线性布局。
然后,您将在UITableView
上方有一个固定的定位视图。
如果你想知道是否可以使用UITableView,你可能想要使用UIViewController ......