ios中xib文件的用法

时间:2023-03-09 00:22:57
ios中xib文件的用法

ios中xib文件的用法

ZQRView文件:

//
// ZQRView.h
//
//
// Created by zzqqrr on 17/8/20.
//
// #import <UIKit/UIKit.h>
@class appModel;
@interface ZQRView : UIView
@property (nonatomic,assign) appModel *apps;
/** 通过模型数据创建一个view */
+ (instancetype)appViewWithApp:(appModel *)app;
+ (instancetype)appView;
@end //
// ZQRView.m
//
//
// Created by zzqqrr on 17/8/20.
//
// #import "ZQRView.h"
#import "appModel.h" @interface ZQRView()
@property (weak, nonatomic) IBOutlet UIImageView *titleImage;
@property (weak, nonatomic) IBOutlet UILabel *title;
@property (weak, nonatomic) IBOutlet UILabel *nowTimes; @end @implementation ZQRView - (void)setApps:(appModel *)apps
{
_apps=apps;
self.title.text=apps.title;
self.titleImage.image=[UIImage imageNamed:apps.icon];
}
+ (instancetype)appViewWithApp:(appModel *)app
{
NSBundle *bundle=[NSBundle mainBundle];
NSArray *objs=[bundle loadNibNamed:@"appZqr" owner:nil options:nil];
ZQRView *appView=[objs lastObject];
appView.apps=app;
return appView;
}
+ (instancetype)appView
{
return [self appViewWithApp:nil];
}
@end
    //没有封装
NSBundle *bundle1=[NSBundle mainBundle];
NSArray *obj=[bundle1 loadNibNamed:@"appZqr" owner:nil options:nil];
ZQRView *MyView=[obj lastObject];//数据模型
appModel *mymodel=self.apps[index];
MyView.apps=mymodel;//把模型赋值给xib的view //内部封装的
ZQRView *appView2=[ZQRView appViewWithApp:self.apps[index]]; NSBundle *bundle=[NSBundle mainBundle];
//读取xib文件(会去创建xib中的描述的所有对象,并且按顺序放到数组中返回)
NSArray *objs=[bundle loadNibNamed:@"zqrappView" owner:nil options:nil];
UIView *appView1=[objs lastObject];
//获取xib空间方法一
UIImageView *iconView=appView1.subviews[];
iconView.image=nil;
UILabel *nameLable=appView1.subviews[];
nameLable.text=@"";
//获取xib空间方法二
UIImageView *iconView1=(UIImageView *)[appView1 viewWithTag:];
UILabel *nameLabel1=(UILabel *)[appView1 viewWithTag:];