iOS 實現類似安卓的 九宮格 手勢鎖 元件

2021-06-20 00:42:10 字數 1632 閱讀 3820

先看效果:

注:以前也傳過這個元件,之前做的有些類似草稿,因為要趕專案進度,最近有空把這個元件完善了一下,也提供了很多自定義ui的屬性和介面

標頭檔案中介面和屬性具體如下:

#import @class ittlockview;

@protocol ittlockviewdelegate @optional

- (void)lockview:(ittlockview *)lockview didselectedcircleatindex:(nsinteger)index;

- (void)touchesend:(ittlockview *)lockview;

@end

@inte***ce ittlockview : uiimageview

//@property (nonatomic, retain) uiimage *selectedimage;

@property (nonatomic, retain) uicolor *linecolor;

@property (nonatomic, retain) uiimage *selectedimage4falsestate;

@property (nonatomic, retain) uicolor *linecolor4falsestate;

@property (nonatomic, assign) nsinteger linewidth;

// 設定是否能跳點連線

@property (nonatomic, assign) bool canskipconnect;

// @property (nonatomic, retain) nsmutablearray *selectedindexs;

// @property (nonatomic, assign) iddelegate;

//@property (nonatomic, assign) bool currentstate;

//@property (nonatomic, assign) bool touchesenabled;

- (id)initwithframe:(cgrect)frame circleradius:(float)radius circlecolor:(uicolor *)color circlethickness:(float)thickness circlefillcolor:(uicolor *)fillcolor;

- (id)initwithframe:(cgrect)frame circleradius:(float)radius circlecolor:(uicolor *)color circlethickness:(float)thickness;

- (id)initwithframe:(cgrect)frame circleradius:(float)radius circlecolor:(uicolor *)color;

- (void)resetinte***ce;

@end

IOS 九宮格實現思路

根據要求 顯示 以九宮格形式排放 基本思路 顯示總列數 可以隨意改變 int columncount 3 沒個格仔的寬度和高度 計算間隙 uiview vi uiview alloc init vi.backgroundcolor uicolor greycolor 計算列號和行號 int colx...

iOS 九宮格連線手勢解鎖

效果圖 核心 clockview.m 手勢解鎖 created by llkj on 2017 8 24.import clockview.h inte ce clockview 存放當前選中的按鈕 property nonatomic,strong nsmutablearray selectbtn...

Flex實現九宮格

關鍵點 利用了padding top和flex wrap wrap,當設定background color時,是包括盒子模型中的content和padding的,但是為什麼不設定height呢?因為父元素沒有高度,所以定義height 30 是沒有用的,且若想每個block都為正方形,最好的方式就是...