1
我想移動一個自動完成的tableview,所以它的頂部將觸摸字段用戶的底部邊界當前正在輸入 要做到這一點,我做了一些計算,然後執行在接觸相應領域的舉動。Touch Down不執行動作它應該是
這裏有3個出口變量,2個字段和一個表視圖:
@IBOutlet var tableRefresh:UITableView!
@IBOutlet weak var countriesFieldVar: UITextField!
@IBOutlet weak var countriesFieldVar2: UITextField!
下面是變量....
var field1YBottomCoordinate = 0
var tableXCenter = 0
var tableYCenter = 0
var field2YBottomCoordinate = 0
var differenceBetweenY = 0
....我在viewDidLoad中設置:
field1YBottomCoordinate = Int(CGRectGetMinY(countriesFieldVar.frame))
tableXCenter = Int(CGRectGetMidX(tableRefresh.frame))
tableYCenter = Int(CGRectGetMidY(tableRefresh.frame))
field2YBottomCoordinate = Int(CGRectGetMinY(countriesFieldVar2.frame))
differenceBetweenY = Int(field2YBottomCoordinate - field1YBottomCoordinate) + 1
然後,在接觸countriesFieldVar2時,我執行此操作將tableRefresh移動到所需位置:
@IBAction func coutriesField2SetSelect(sender: AnyObject) {
tableRefresh.center = CGPoint(x:tableXCenter, y: (tableYCenter + differenceBetweenY))
}
問題是,在第一次接觸countriesFieldVar2字段時,什麼也沒有發生。或者是正確的,我簡要地看到桌子在鍵盤向上移動時閃爍到所需的位置,然後桌子向後移回到原來的位置。只有在場上第二次接觸,我才能得到理想的舉動。這是爲什麼 ? (請使用SWIFT)
可能重試,因爲iOS8上仍然需要它做了一些工作。 – AMAN77 2014-10-27 18:47:23
您是否知道替代方案,以便我可以在第一次觸地時正確移動視圖,因爲它應該發生? – 2014-10-28 09:57:10
我有時會添加一個計時器和一個布爾重做觸摸作爲一個四處走動? – AMAN77 2014-10-28 10:50:27