Codigo de Ejercicio:
- EJEMPLO CAPITULO 8 BOOKSTORE
//
//
// JEHOVANI DE JESUS CHAVEZ SEGOVIA 2561842011
import UIKit
class MasterViewController: UITableViewController {
var objects = NSMutableArray()
var myBookStore: BookStore = BookStore()
override func awakeFromNib() {
super.awakeFromNib()
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
//self.navigationItem.leftBarButtonItem = self.editButtonItem()
//let addButton = UIBarButtonItem(barButtonSystemItem: .Add, target: self, action: "insertNewObject:")
//self.navigationItem.rightBarButtonItem = addButton
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
/*
func insertNewObject(sender: AnyObject) {
objects.insertObject(NSDate(), atIndex: 0)
let indexPath = NSIndexPath(forRow: 0, inSection: 0)
self.tableView.insertRowsAtIndexPaths([indexPath], withRowAnimation: .Automatic)
}
*/
// MARK: - Segues
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "showDetail" {
if let indexPath = self.tableView.indexPathForSelectedRow() {
let selectedBook:Book = myBookStore.theBookStore[indexPath.row]
(segue.destinationViewController as! DetailViewController).detailItem = selectedBook
}
}
}
// MARK: - Table View
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 1
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return myBookStore.theBookStore.count
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! UITableViewCell
cell.textLabel?.text = myBookStore.theBookStore[indexPath.row].title
cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator
return cell
}
override func tableView(tableView: UITableView, canEditRowAtIndexPath indexPath: NSIndexPath) -> Bool {
// Return false if you do not want the specified item to be editable.
return true
}
override func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {
if editingStyle == .Delete {
objects.removeObjectAtIndex(indexPath.row)
tableView.deleteRowsAtIndexPaths([indexPath], withRowAnimation: .Fade)
} else if editingStyle == .Insert {
// Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view.
}
}
}
//
//
//
// JEHOVANI DE JESUS CHAVEZ SEGOVIA 2561842011
import UIKit
class DetailViewController: UIViewController {
@IBOutlet weak var titleLabel: UILabel!
@IBOutlet weak var authorLabel: UILabel!
@IBOutlet weak var descriptionTextView: UITextView!
@IBOutlet weak var test: UILabel!
var detailItem: AnyObject? {
didSet {
// Update the view.
}
}
func configureView() {
if let detail: AnyObject = self.detailItem {
var myBook = detail as! Book
titleLabel.text = myBook.title
authorLabel.text = myBook.author
descriptionTextView.text = myBook.description
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
self.configureView()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
Clases
// JEHOVANI DE JESUS CHAVEZ SEGOVIA 2561842011
import Foundation
class Book {
var title: String = ""
var author: String = ""
var description: String = ""
}
// JEHOVANI DE JESUS CHAVEZ SEGOVIA 2561842011
import Foundation
class BookStore {
var theBookStore: [Book] = []
init() {
var newBook = Book()
newBook.title = "Swift for Absolute Beginners"
newBook.author = "Bennett and Lees"
newBook.description = "iOS Programming made easy."
theBookStore.append(newBook)
newBook = Book()
newBook.title = "A Farewell To Arms"
newBook.author = "Ernest Hemingway"
newBook.description = "The story of an affair between an English " + "nurse and an American soldier " + "on the Italian front " + "during World War I."
theBookStore.append(newBook)
}
}