高仿美團主介面<一>__介面引擎

來源:互聯網
上載者:User

聲明:本demo還未完善,正在持續更新中。。。
先上圖吧:


這個小demo資源圖片全是用青花瓷摳出來的,現在只是完成了 一部分。會持續更行中。。。有興趣的朋友可以關注我,我們一起coding,一起分享。

然後這個demo很簡單。但是有一些小細節可以和大家分享。

相信用過美團的同鞋都知道,美團的主介面。

效果動畫圖如下:

git圖
很明顯美團的主介面是一個tableView 如上圖的scrollView是tableView的一個cell.

快速建立一個cell並傳遞一個模型。 (UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath{

JFHomeMenuCell*cell = [JFHomeMenuCellcellWithTableView:tableViewmenuArray:self.menuArray];

returncell;

}
快速得倒plist檔案裡面的資料。

self.menuArray=[GetPlistArrayarrayWithString:@”menuData.plist”];
具體實現:只要給我一個檔案名稱就給你返回一個該檔案的數組,是不是很爽。反正我是覺得很爽。

NSString*plistPath = [[NSBundlemainBundle]pathForResource:stringofType:nil];

NSArray*array = [[NSArray alloc]initWithContentsOfFile:plistPath];

return array;
如上tableView快速建立cell同一個原理。給我傳一個tableView就建立一個cell是不是可以舉一反三了。

staticNSString*menuID =@”menu”;

JFHomeMenuCell*cell = [tableView dequeueReusableCellWithIdentifier:menuID];

if(cell ==nil) {

cell = [[JFHomeMenuCellalloc]initWithStyle:UITableViewCellStyleDefaultreuseIdentifier:menuIDmenuArray:menuArray];

}

returncell;
cell怎麼建立的控制器不必知道。

送上一句寶貴意見:控制器知道的越少越好。
接下來就是建立16個按鈕,你不會的話 要請我吃飯了。接下來說一個代理方法: pragma mark - scrollView delegate (void)scrollViewDidScroll:(UIScrollView*)scrollView{

CGFloatscrollViewW =scrollView.frame.size.width;

//算出水平移的距離

CGFloatx = scrollView.contentOffset.x;

intpage = (x + scrollViewW/2)/scrollViewW;

_pageControl.currentPage= page;

}
算出當前的是處於ScrollView的哪個介面。

再說pageControl的兩個屬性

_pageControl.currentPageIndicatorTintColor=navigationBarColor;//處於哪個介面的小圓點原色

_pageControl.pageIndicatorTintColor= [UIColorgrayColor];//於上相反。
搞定。由於比較簡單不上傳到github上了。

本demo會持續更新的哦。重要的事情說三遍哈哈。

睡覺了。晚安23:19的上海。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.