zoukankan      html  css  js  c++  java
  • 高仿美团主界面<一>

    声明:本demo还未完好,正在持续更新中。。。
    先上图吧:

    这里写图片描写叙述
    这个小demo资源图片全是用青花瓷抠出来的,如今仅仅是完毕了 一部分。

    会持续更行中。

    。有兴趣的朋友能够关注我,我们一起coding,一起分享。

    然后这个demo非常easy。可是有一些小细节能够和大家分享。

    相信用过美团的同鞋都知道。美团的主界面。

    效果动绘图例如以下:
    这里写图片描写叙述

    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个button,你不会的话 要请我吃饭了。接下来说一个代理方法:

    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的上海。

  • 相关阅读:
    EL表达式与JSTL
    jsp
    Servlet 会话
    Servlet 常用类
    Servlet
    Java 网络编程
    CentOS系统下安装python3+Django
    转载Alpine Linux常用命令
    转载Alpine基础
    CentOS启动docker1.13失败(Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.)
  • 原文地址:https://www.cnblogs.com/yjbjingcha/p/8409868.html
Copyright © 2011-2022 走看看