zoukankan      html  css  js  c++  java
  • Swift3 页面顶部实现拉伸效果代码

      //懒加载    
      //顶部需要拉伸自定义视图 lazy var headView:MyHeaderView = { //let hframe = CGRect(x: 0, y: 0, swidth, height: swidth/self.imgRation) // let hview = Bundle.main.loadNibNamed("MyInfoHeaderView", owner: nil, options: nil)?.first as! MyInfoHeaderView //return hview; }() //MARK:1)集合视图 self.collectionView?.addSubview(self.headView)
    override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { if indexPath.section == 0 { //顶部返回一个空的cell let cell = collectionView.dequeueReusableCell(withReuseIdentifier: reuseIdentifier, for: indexPath) return cell } .... func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize { if indexPath.section == 0 {//顶部 return CGSize( swidth, height:200.0 ) } .... //MARK:2)列表视图 self.tableView?.addSubview(self.headView)
    override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { if indexPath.section == 0 { //顶部返回一个空的cell var cell = tableView.dequeueReusableCell(withIdentifier: reuseIdentifier) return cell! } .... override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { if indexPath.section == 0{ return 200.0; } .... //MARK:拉伸效果实现位置 override func scrollViewDidScroll(_ scrollView: UIScrollView) { let point = scrollView.contentOffset; if point.y <= 0 {//下拉 //self.headView.frame.size.height = swidth/imgRation - point.y //self.headView.frame.size.width = self.headView.frame.size.height*imgRation //self.headView.frame.origin.x = (swidth - self.headView.frame.size.width)/2 //self.headView.frame.origin.y = point.y //self.headView.titleImgLeft.constant = 18 - self.headView.frame.origin.x //self.mainNavView.backgroundColor = UIColor.clear //self.mainNavView.searImg.image = UIImage(named: "搜索框r") }else{//上推 //if point.y >= (self.headView.frame.height - 64){ //self.mainNavView.searImg.image = UIImage(named: "搜索框w") //self.mainNavView.searchText.backgroundColor = UIColor.white //} //self.headView.titleImgLeft.constant = 18 // self.mainNavView.backgroundColor = UIColor(red:245/255.0, green:74/255.0, blue:48/255.0, alpha: point.y/(self.headView.frame.height - 64)) } } 
  • 相关阅读:
    开源项目
    [Accessibility] Missing contentDescription attribute on image [可取行]失踪contentDescription属性图像
    Android 布局 中实现适应屏幕大小及组件滚动
    EF 错误记录
    EasyUI 加载时需要显示和隐藏 panel(面板)内容破版问题
    IE 报表缩放后页面破版
    VS 2017 引入nuget 问题
    SSRS 报表显示页面 asp net session丢失或者找不到 asp net session has expired or could not be found()
    log4net 配置
    网站
  • 原文地址:https://www.cnblogs.com/mapanguan/p/6386868.html
Copyright © 2011-2022 走看看