【移動(dòng)應(yīng)用開發(fā)技術(shù)】iOS如何實(shí)現(xiàn)中獎(jiǎng)名單循環(huán)滾動(dòng)效果_第1頁(yè)
【移動(dòng)應(yīng)用開發(fā)技術(shù)】iOS如何實(shí)現(xiàn)中獎(jiǎng)名單循環(huán)滾動(dòng)效果_第2頁(yè)
【移動(dòng)應(yīng)用開發(fā)技術(shù)】iOS如何實(shí)現(xiàn)中獎(jiǎng)名單循環(huán)滾動(dòng)效果_第3頁(yè)
【移動(dòng)應(yīng)用開發(fā)技術(shù)】iOS如何實(shí)現(xiàn)中獎(jiǎng)名單循環(huán)滾動(dòng)效果_第4頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

【移動(dòng)應(yīng)用開發(fā)技術(shù)】iOS如何實(shí)現(xiàn)中獎(jiǎng)名單循環(huán)滾動(dòng)效果

1.動(dòng)態(tài)效果圖:

/upload/information/20200623/126/118334.gif2.思路:import

UIKit

class

ViewController:

UIViewController,UITableViewDelegate,UITableViewDataSource{

var

tableView:UITableView!

var

doubleTableView:UITableView!

let

kScreenW

=

UIScreen.main.bounds.size.width

let

kXPercent

=

UIScreen.main.bounds.size.width

/

375.0

let

kBorderW

=

CGFloat(15.0)

let

kYPercent

=

UIScreen.main.bounds.size.width

/

375.0

let

cellId:String

=

"drawViewCell1"

override

func

viewDidLoad()

{

super.viewDidLoad()

self.addListTableView()

}

func

addListTableView(){

let

tableWidth

=

kScreenW

-

kBorderW*3

let

tableBgView

=

UIView(frame:

CGRect(x:

(kScreenW-tableWidth)/2.0,y:

100*kYPercent,width:

tableWidth,height:

148*kYPercent))

tableBgView.clipsToBounds

=

true

tableBgView.backgroundColor

=

UIColor.yellow

self.view.addSubview(tableBgView)

//

tableView

=

UITableView(frame:

CGRect(x:

0,y:

0,width:

tableWidth,height:

148*kYPercent*2),

style:

UITableViewStyle.plain)

tableView.backgroundColor

=

UIColor.clear

tableView.delegate

=

self

tableView.dataSource

=

self

tableView.separatorStyle

=

UITableViewCellSeparatorStyle.none

tableBgView.addSubview(tableView)

doubleTableView

=

UITableView(frame:

CGRect(x:

0,y:

tableView.frame.origin.y+tableView.frame.size.height,width:

tableWidth,height:

148*kYPercent*2),

style:

UITableViewStyle.plain)

doubleTableView.backgroundColor

=

UIColor.clear

doubleTableView.delegate

=

self

doubleTableView.dataSource

=

self

doubleTableView.separatorStyle

=

UITableViewCellSeparatorStyle.none

tableBgView.addSubview(doubleTableView)

//

Timer.scheduledTimer(timeInterval:

0.1,

target:

self,

selector:

#selector(personListScroll(timer:)),

userInfo:

nil,

repeats:

true)

}

@objc

func

personListScroll(timer:Timer){

//

1>移動(dòng)tableView的frame

var

newTableViewframe

=

self.tableView.frame

newTableViewframe.origin.y

-=

2*kYPercent

if

(newTableViewframe.origin.y

<

-(doubleTableView.frame.size.height))

{

newTableViewframe.origin.y

=

tableView.frame.size.height

}

self.tableView.frame

=

newTableViewframe

//

2>移動(dòng)doubleTableView的frame

var

newDoubleViewframe

=

self.doubleTableView.frame

newDoubleViewframe.origin.y

-=

2*kYPercent

if

newDoubleViewframe.origin.y

<

-(tableView.frame.size.height)

{

newDoubleViewframe.origin.y

=

tableView.frame.size.height

}

self.doubleTableView.frame

=

newDoubleViewframe

}

//返回行的個(gè)數(shù)

func

tableView(_

tableView:

UITableView,

numberOfRowsInSection

section:

Int)

->

Int{

return

10

}

//返回列的個(gè)數(shù)

func

numberOfSections(in

tableView:

UITableView)

->

Int

{

return

1;

}

//去除頭部空白

func

tableView(_

tableView:

UITableView,

heightForHeaderInSection

section:

Int)

->

CGFloat

{

return

0.001

}

//去除尾部空白

func

tableView(_

tableView:

UITableView,

heightForFooterInSection

section:

Int)

->

CGFloat

{

return

0.001

}

//返回一個(gè)cell

func

tableView(_

tableView:

UITableView,

cellForRowAt

indexPath:

IndexPath)

->

UITableViewCell{

//回收池

var

cell:UITableViewCell!

=

tableView.dequeueReusableCell(withIdentifier:

cellId)

if

cell

==

nil{//判斷是否為nil

cell

=

UITableViewCell(style:

UITableViewCellStyle.default,

reuseIdentifier:

cellId)

}

cell.backgroundColor

=

UIColor.clear

cell.selectionStyle

=

UITableViewCellSelectionStyle.none

if

tableView

==

self.tableView{//

測(cè)試是否循環(huán)滾動(dòng)

cell.textLabel?.text

=

"張先生"

}else

{

cell.textLabel?.text

=

"李小姐"

}

return

cell

}

//返回cell的高度

func

tableView(_

tableVie

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論