iOS--MVC、自定义大小可变的view(纯手写)

本文介绍了如何使用MVC架构在iOS开发中自定义一个视图,该视图包含image、string元素,并能根据内容动态调整大小。通过创建dataModel和frameModel来管理数据和布局,实现视图的自适应。虽然示例简单,但可以作为自定义cell时的参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

采用MVC自定义一个view,效果:


思路:

采用MVC,第一步确定model。很明显这个view的model应该由image、string、string组成。model如下:

dataModel:

.h

//
//  DataModel.h
//  NSOpration
//
//  Created by Wu on 16/3/2.
//  Copyright © 2016年 Wu. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

@interface DataModel : NSObject

/**
 *  数据模型:设备名称、设备状态、下拉角标
 */
@property(nonatomic , strong)NSString *deviceName;
@property(nonatomic , strong)NSString *deviceState;
@property(nonatomic , strong)NSString *icon;

/**
 *  利用KVC初始化
 *
 *  @param dict 属性集
 *
 *  @return 数据模型
 */
- (instancetype)initWithDict:(NSDictionary *)dict;
+ (instancetype)dataModelWithDict:(NSDictionary *)dict;

@end
.m

//
//  DataModel.m
//  NSOpration
//
//  Created by Wu on 16/3/2.
//  Copyright © 2016年 Wu. All rights reserved.
//

#import "DataModel.h"

@implementation DataModel

- (instancetype)initWithDict:(NSDictionary *)dict {
    self = [super init];
    if (self) {
        [self setValuesForKeysWithDictionary:dict];
    }
    return self;
}

+ (instancetype)dataModelWithDict:(NSDictionary *)dict {
    return [[self alloc]initWithDict:dict];
}

@end
说明:一个AV女优就是一部生产AV的设备,所以它们取名icon、deviceName、deviceState。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值