大佬教程收集整理的这篇文章主要介绍了iOS中的静态页脚,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我已尝试使用此代码调整表格视图的大小:
- (id)initWithStyle:(UITableViewStylE)style { if ((self = [super initWithStyle: style])) { UIView *footer = [[UIView alloc] initWithFrame: CGRectMake(0,1,45)]; footer.BACkgroundColor = [UIColor clearColor]; self.tableView.tableFooterView = footer; self.tableView.frame = CGRectMake(0,320,100); footer.hidden = NO; }
到目前为止,我没有运气.
我也尝试过使用其他窗口并调整所有.XIB文件的大小.
如果您希望页脚是静态和非浮动的,那么您有两个简单的选择:
>不理想但很简单:使用最后一部分的页脚视图作为静态页脚.这将在某些条件下工作:
>您的UITableView样式必须是UITableViewStylePlain(因为UITableViewStyleGrouped对UITableView tableHeaderView和tableFooterView的节头/页脚的行为相同
>您将无法使用最后一个部分页脚来实现其目的:为特定部分提供页脚信息
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section { UIView *view = nil; if (section == [tableView numberOfSections] - 1) { // This UIView will only be created for the last section of your UITableView view = [[UIView alloc] initWithFrame:CGRectZero]; [view setBACkgroundColor:[UIColor redColor]]; } return view; }
>现在最佳解决方案:在与UITableView相同的级别添加UIView(在代码中或在XIB中).一个小条件:
> UIViewController的self.view属性不能是您的UITableView对象.这意味着您不能将uITableViewController子类化为UIViewController,并使您的控制器符合UITableViewDatasource和UITableViewDelegate协议.它实际上比它看起来更简单,并且比直接使用UITableViewController更好的实现(就我而言).
这是代码中的一个简单示例(但您可以使用Interface Builder完全相同):
ViewController.h:
#import <UIKit/UIKit.h> @interface ViewController : UIViewController <UITableViewDatasource,UITableViewDelegate> @end
ViewController.m:
#import "ViewController.h" @interface ViewController () @property (strong,nonatomiC) UITableView *tableView; @property (strong,nonatomiC) UIView *fixedTableFooterView; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; CGFloat fixedFooterHeight = 200.0; // Initialize the UITableView CGRect tableViewFrame = CGRectMake(CGRectGetMinX(self.view.bounds),CGRectGetMinY(self.view.bounds),CGRectGetWidth(self.view.bounds),CGRectGetHeight(self.view.bounds) - fixedFooterHeight); self.tableView = [[UITableView alloc] initWithFrame:tableViewFrame style:UITableViewStylePlain]; // or Grouped if you want... [self.tableView setDatasource:self]; [self.tableView setDelegate:self]; [self.view addSubview:self.tableView]; // Initialize your Footer CGRect footerFrame = CGRectMake(CGRectGetMinX(self.view.bounds),CGRectGetMaxY(self.view.bounds) - fixedFooterHeight,fixedFooterHeight); // what ever frame you want self.fixedTableFooterView = [[UIView alloc] initWithFrame:footerFrame]; [self.fixedTableFooterView setBACkgroundColor:[UIColor redColor]]; [self.view addSubview:self.fixedTableFooterView]; } - (void)viewDidUnload { [super viewDidUnload]; [self setTableView:nil]; [self setFixedTableFooterView:nil]; } @end
您还可以指定UIViewAutoresizing蒙版,使其在纵向和横向上无缝工作,但我并没有使这个相当简单的代码复杂化.
警告:这个.h和.m文件将无法编译,因为我没有放入UITableViewDatasource所需的方法.如果要查看它的实际效果,请注释setDatasource:行.
希望这会有所帮助,
随意问我其他细节,
以上是大佬教程为你收集整理的iOS中的静态页脚全部内容,希望文章能够帮你解决iOS中的静态页脚所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。