基本上我有一个表格视图控制器,我正在使用事务填充。当用户点击添加按钮时,用户可以选择通过分段控件输入付款或信用额度。如何根据用户选择向表格视图单元格添加图像
我想知道如何根据用户选择的内容显示(例如)绿色箭头图像和每个单元格中的付款红色箭头?顺便说一句,我正在使用Swift。
这是细胞目前的样子。我希望箭头位于“金额”标签的左侧。
任何帮助将不胜感激。
这里是我目前拥有的代码...
ThirdViewController:
var arrayObject = ArrayData()
class ThirdViewController: UITableViewController {
@IBAction func addNewPaymentButton(sender : AnyObject) {
//Add code for adding a new payment here
}
override func viewWillAppear(animated: Bool) {
self.tableView.reloadData()
}
override func viewDidLoad() {
super.viewDidLoad()
// Uncomment the following line to preserve selection between presentations
// self.clearsSelectionOnViewWillAppear = false
// Uncomment the following line to display an Edit button in the navigation bar for this view controller.
// self.navigationItem.rightBarButtonItem = self.editButtonItem
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
// #pragma mark - Table view data source
override func numberOfSectionsInTableView(tableView: UITableView?) -> Int {
// #warning Potentially incomplete method implementation.
// Return the number of sections.
return 1
}
override func tableView(tableView: UITableView?, numberOfRowsInSection section: Int) -> Int {
// #warning Incomplete method implementation.
// Return the number of rows in the section.
return arrayObject.paymentsArray().count
}
override func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell! {
var cell:CustomTransactionTableViewCell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as CustomTransactionTableViewCell
cell.paymentNameLabel.text = (arrayObject.paymentsArray().objectAtIndex(indexPath.row)) as String
cell.costLabel.text = (arrayObject.costArray().objectAtIndex(indexPath.row)) as String
cell.dateLabel.text = (arrayObject.dateArray().objectAtIndex(indexPath.row)) as String
if transactionType == 0 {
cell.paymentArrowImage.hidden = false
} else if transactionType == 1 {
cell.creditArrowImage.hidden = false
}
return cell
}
override func tableView(tableView: UITableView!, canEditRowAtIndexPath indexPath: NSIndexPath!) -> Bool {
return true
}
override func tableView(tableView: UITableView!, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath!) {
if (editingStyle == UITableViewCellEditingStyle.Delete) {
//Add code for deletion
}
}
}
这是FifthViewController唯一的相关代码:
arrayDataPayments.addObject(transactionName)
arrayDataCost.addObject("£\(finalUserBudget)")
arrayDataDate.addObject(transactionDateInputted)
ArrayData
var arrayDataPayments: NSMutableArray = []
var arrayDataCost: NSMutableArray = []
var arrayDataDate: NSMutableArray = []
class ArrayData: NSObject {
func paymentsArray() -> NSMutableArray { return arrayDataPayments }
func costArray() -> NSMutableArray { return arrayDataCost }
func dateArray() -> NSMutableArray { return arrayDataDate }
}
CustomTransactionTableViewCell
class CustomTransactionTableViewCell: UITableViewCell {
@IBOutlet var paymentNameLabel : UILabel
@IBOutlet var dateLabel : UILabel
@IBOutlet var costLabel : UILabel
@IBOutlet var creditArrowImage: UIImageView
@IBOutlet var paymentArrowImage: UIImageView
init(style: UITableViewCellStyle, reuseIdentifier: String) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
// Initialization code
}
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
}
请原谅全局变量。他们只是暂时的。
任何一段代码? – Shamsiddin
我已将当前的代码添加为编辑。 – user3746428