gpt4 book ai didi

ios - 当我的自定义 TableView 单元格中的用户选项卡调用按钮时,如何从 json 获取号码并在拨号盘中显示该号码

转载 作者:行者123 更新时间:2023-11-29 01:07:27 24 4
gpt4 key购买 nike

我有一个自定义单元格,它有一些name labeladdress label 和一个call button

现在我需要的是,在我的表格 View 单元格中有一个 call button 。当我单击它时,我需要获取相应的行(即每个单元格都有一些名称和地址标签以及一个按钮。当我点击调用按钮时,它应该调用适当的号码并且应该显示在我的手机拨号盘中)

我的自定义单元格类:

class premiumUsercell: UITableViewCell {


@IBOutlet weak var vendorName3: UILabel!



@IBOutlet weak var vendorAdddress3: UILabel!

override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}



@IBAction func CallbuttonTap(sender: AnyObject) {
}

我的 View Controller :

 func jsonParsingFromURL () {
let url = NSURL(string: "url")
let session = NSURLSession.sharedSession()

let request = NSURLRequest(URL: url!)
let dataTask = session.dataTaskWithRequest(request) { (data:NSData?, response:NSURLResponse?, error:NSError?) -> Void in
// print("done, error: \(error)")

if error == nil
{

dispatch_async(dispatch_get_main_queue()){
self.arrDict=(try! NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.MutableContainers)) as! NSMutableArray

//print(self.arrDict)

if (self.arrDict.count>0)
{
self.Resultcount.text = "\(self.arrDict.count) Results"
self.tableView.reloadData()
}}

// arrDict.addObject((dict.valueForKey("xxxx")
}


}
dataTask.resume()


}




func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return self.arrDict.count
}

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1
}
func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return cellSpacingHeight
}




func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let headerView = UIView()
headerView.backgroundColor = UIColor.clearColor()
return headerView
}
//
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

if(isTapped == true && indexPath == selectedIndex)
{



if (premiumUserCheck && indexPath == selectedIndex ) {

let cell1:premiumUsercell = self.tableView.dequeueReusableCellWithIdentifier("cell3") as! premiumUsercell


cell1.vendorName3.text=arrDict[indexPath.section] .valueForKey("name") as? String
cell1.vendorAdddress3.text=arrDict[indexPath.section] .valueForKey("address") as? String

print("premium user")

return cell1


}
else {

let cell1:ExpandCell = self.tableView.dequeueReusableCellWithIdentifier("cell2") as! ExpandCell


cell1.VendorName.text=arrDict[indexPath.section] .valueForKey("name") as? String
cell1.vendorAdress.text=arrDict[indexPath.section] .valueForKey("address") as? String
//cell1.externalView.hidden = true

print("non premium user")
return cell1
}
}





let cell:customCell = self.tableView.dequeueReusableCellWithIdentifier("cell") as! customCell


cell.vendorName.text=arrDict[indexPath.section] .valueForKey("name") as? String
cell.vendorAddress.text=arrDict[indexPath.section] .valueForKey("address") as? String

print("norml user")



return cell
}

现在我如何从 json 调用号码,以及当我点击自定义单元格中的调用按钮时如何在拨号盘中调用电话

请帮帮我!

最佳答案

premiumUsercell 中有一个变量,如下所示,

class premiumUsercell: UITableViewCell {
var phoneNumber = ""
}

cellForRowAtIndexPath中添加此代码,

cell1.phoneNumber = arrDict[indexPath.section] .valueForKey("phone") as? String

premiumUsercell 中,CallbuttonTap 方法

@IBAction func CallbuttonTap(sender: AnyObject) {

var phoneString = "tel://\(phoneNumber)"
let openURL = NSURL(string:phoneString)
if openURL == nil {
return
}
let application:UIApplication = UIApplication.sharedApplication()
if (application.canOpenURL(openURL!)) {
application.openURL(openURL!)
}
}

关于ios - 当我的自定义 TableView 单元格中的用户选项卡调用按钮时,如何从 json 获取号码并在拨号盘中显示该号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36174354/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com