-(instancetype)initWithFrame:(CGRect)frame
{
if (self=[superinitWithFrame:frame]) {
self.layer.cornerRadius =10;
self.layer.shadowOffset =CGSizeMake(4,4);
self.layer.shadowOpacity =0.5;
self.layer.shadowColor = [UIColorblackColor].CGColor;
self.backgroundColor=[UIColorblackColor];
UIImageView *imageView=[[UIImageViewalloc]initWithFrame:CGRectMake(0,0, 200, 200)];
imageView.backgroundColor=[UIColorredColor];
imageView.layer.masksToBounds=YES;
imageView.layer.cornerRadius=100;
[selfaddSubview:imageView];
UIButton *btn=[UIButtonbuttonWithType:UIButtonTypeCustom];
btn.frame=CGRectMake(self.frame.size.width-50,10, 40, 20);
btn.backgroundColor=[UIColorcyanColor];
[btn addTarget:selfaction:@selector(hiddenAction)forControlEvents:UIControlEventTouchUpInside];
[selfaddSubview:btn];
}
return self;
}
-(void)showFromSuperView:(UIView *)superView
{
CGRect rect=self.bounds;
rect.origin =CGPointMake((superView.bounds.size.width - rect.size.width) / 2, 100);
self.frame = rect;
self.alpha =0;
[superViewaddSubview:self];
[UIViewanimateWithDuration:0.4animations:^{
self.alpha =1.0;
}];
}
-(void)hiddenFromSuperView
{
[UIViewanimateWithDuration:0.3animations:^{
self.alpha =0;
}completion:^(BOOL finished) {
[selfremoveFromSuperview];
}];
}
-(void)hiddenAction
{
[selfhiddenFromSuperView];
}
使uiview可以點擊push
/** 臨時記錄自己的導航控制器 ¥¥¥注意這兒必須用weak,如果用strong就循環引用了¥¥¥¥ */
@property (weak, nonatomic) UINavigationController *superNC;
- (void)viewClick
{
//拿到當前的控制器,這個view在正常的時候會在創建後拿到數據模型,所以可以直接推到下一個界面,展示作者的詳情
WNXUserInfoDetailViewController *user = [[WNXUserInfoDetailViewController alloc] init];
// ff.view.backgroundColor =[UIColor randColor];
[self.superNC pushViewController:user animated:YES];
}