测试已测试 | ✗ |
Lang语言 | Obj-CObjective C |
许可证 | MIT |
Released最新发布 | 2014年12月 |
由 未声明的所有者 维护。
RNBlurredSideViewController 是一个侧视图控制器,在滑动时具有类似 iOS 7 控制中心的动态模糊背景效果。它可以用来显示像 Facebook 或 Path 应用那样的侧边视图。RNBlurredSideViewController 的独特之处在于,它可以在滑动时动态模糊侧视图背景,类似于 iOS 7 控制中心。模糊效果的实现不是基于 UIToolbar 的。模糊效果可以自定义。
从 RNBlurredSideViewController 映射子类
@interface ViewController : RNBlurredSideViewController
在 viewController 的 init 方法中设置 backgroundImage 和其他参数
- (id)initWithCoder:(NSCoder*)aDecoder
{
if(self = [super initWithCoder:aDecoder])
{
// Do something
self.backgroundImage = [UIImage imageNamed:@"bkg.jpg"];
self.leftWidth = 250;
self.rightWidth = 250;
self.sideViewTintColor = [UIColor whiteColor];
self.sideViewAlpha = 0.2;
}
return self;
}
将您的视图添加到 self.leftContentView、self.centerContentView 和 self.rightContentView
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
leftTableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 20, self.leftContentView.frame.size.width, self.leftContentView.frame.size.height-20)];
leftTableView.backgroundColor = [UIColor clearColor];
leftTableView.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero];
leftTableView.dataSource = self;
leftTableView.delegate = self;
[self.leftContentView addSubview:leftTableView];
rightTableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 20, self.rightContentView.frame.size.width, self.rightContentView.frame.size.height-20)];
rightTableView.backgroundColor = [UIColor clearColor];
rightTableView.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero];
rightTableView.dataSource = self;
rightTableView.delegate = self;
[self.rightContentView addSubview:rightTableView];
}
左侧视图的宽度。如果没有左侧视图,则设置为 0。
@property (nonatomic, assign) CGFloat leftWidth;
右侧视图的宽度。如果没有右侧视图,则设置为 0。
@property (nonatomic, assign) CGFloat rightWidth;
侧视图的层不透明度。
@property (nonatomic, assign) CGFloat sideViewAlpha;
侧视图的染色颜色。
@property (nonatomic, retain) UIColor *sideViewTintColor;
背景图像。
@property (nonatomic, retain) UIImage *backgroundImage;
左侧视图的容器视图。
@property (nonatomic, retain) UIView *leftContentView;
中心视图的容器视图。
@property (nonatomic, retain) UIView *centerContentView;
右侧视图的容器视图。
@property (nonatomic, retain) UIView *rightContentView;
滑动时变暗背景。默认为 YES。
@property (nonatomic, assign) BOOL dim;
iOS>=6.0 (示例项目使用 iOS 7 构建)
Accelerate 框架
您也可以将类文件拖放到您的项目中,并添加 Accelerate 框架。
RNBlurredSideViewController 目前不支持横向排列。但您可以轻松修改代码以支持它。
Shi Wenbo, [email protected]
RNBlurredSideViewController 可在 MIT 许可下使用。有关更多信息,请参阅 LICENSE 文件。