/**
* 創(chuàng)建方塊
*/
- (void)createSquares:(NSArray *)sqaures
{
// 一行最多4列
int maxCols = 4;
// 寬度和高度
CGFloat buttonW = XMGScreenW / maxCols;
CGFloat buttonH = buttonW;
for (int i = 0; i<sqaures.count; i++) {
// 創(chuàng)建按鈕
XMGSqaureButton *button = [XMGSqaureButton buttonWithType:UIButtonTypeCustom];
// 監(jiān)聽點(diǎn)擊
[button addTarget:self action:@selector(buttonClick:) forControlEvents:UIControlEventTouchUpInside];
// 傳遞模型
button.square = sqaures[i];
[self addSubview:button];
// 計(jì)算frame
int col = i % maxCols;
int row = i / maxCols;
button.x = col * buttonW;
button.y = row * buttonH;
button.width = buttonW;
button.height = buttonH;
}
// 8個(gè)方塊, 每行顯示4個(gè), 計(jì)算行數(shù) 8/4 == 2 2
// 9個(gè)方塊, 每行顯示4個(gè), 計(jì)算行數(shù) 9/4 == 2 3
// 7個(gè)方塊, 每行顯示4個(gè), 計(jì)算行數(shù) 7/4 == 1 2
// 總行數(shù)
// NSUInteger rows = sqaures.count / maxCols;
// if (sqaures.count % maxCols) { // 不能整除, + 1
// rows++;
// }
// 總頁數(shù) == (總個(gè)數(shù) + 每頁的最大數(shù) - 1) / 每頁最大數(shù)
NSUInteger rows = (sqaures.count + maxCols - 1) / maxCols;
// 計(jì)算footer的高度
self.height = rows * buttonH;
}
九宮格(view,button)計(jì)算
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- NineImageView 一個(gè)簡單實(shí)用的九宮格圖片展示控件 截圖 導(dǎo)入 說明 自定義屬性 使用 1.在XML中 ...
- 博客地址http://blog.csdn.net/u012723976/article/details/51728700
- 九宮格計(jì)算思路 利用控件的索引index計(jì)算出控件所在的行號和列號 利用列號計(jì)算控件的x值 利用行號計(jì)算控件的y值...
- 一直都是一個(gè)特別喜歡敲打文字的人,手指在鍵盤上敲打的聲音讓我覺得愉悅。 初中的時(shí)候甚至達(dá)到了腦袋里有什么想法恨不得...
- 1、今日上公開課,復(fù)盤短一些。上完公開課,針對開課,再進(jìn)行好好復(fù)盤。 2、昨日發(fā)生了一系列的事情,后來認(rèn)真思考了一...