CheatSheet for creating an XCode IOS app with a UITableView

Setup

  • Create a standard ViewController (NOT a TableViewController!)
  • Drag a Table onto the ViewController. Snap to edges, Reset to ”Suggested Constraints”. Option Cmd Shift = is the shortcut for that.

Add the DataSource

  • Select the TableView
  • Go to the Connections Inspector
  • Click and drag the dataSource outlet to the View Controller (the yellow icon)
  • In the ViewController class: add (after UIViewController) ”,UITableViewDataSource”
  • Implement these methods:
  1. cellForRowAtIndexPath (returns the value for row indexPath.row). For testing you could return a constant like this:
    func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
            let cell = UITableViewCell()
            cell.textLabel?.text = "My Custom Text"
            return cell
        }
  2. numberOfSectionsInTableView: return 1 or the number of sections you plan to have
  3. numberOfRowsInSection: return the number of rows you have. For testing, use 5.

Run and test the app.

Javascript-länkar att lägga till samlingen

Om ‘use strict’: http://ejohn.org/blog/ecmascript-5-strict-mode-json-and-more/

Modular Javascript/CommonJS: https://addyosmani.com/writing-modular-js/

Babel: Code for ES6 and still be backwards compatible with older browsers: https://babeljs.io

JSX In depth: http://facebook.github.io/react/docs/jsx-in-depth.html

Facebook React Native

Det finns flera ramverk som ger möjlighet att skriva appar i Javascript, och sedan kompilera dem för den målmiljö man är intresserad av (oftast iOS och Android).

De flesta (alla?) av dessa ramverk kompileras till en WebView, dvs en mini-browser med tillhörande HTML och JS-kod. Förutom att det försämrar prestandan så är det svårt att får en applikation att se ”native” ut.

Titanium Appcellerator har någon form av mellanväg, där man får apparna på iOS att se hyfsat bra ut, men sämre på Android.

Nytt på JS-himlen sen 2015 är Facebooks nya React-ramverk. I början på 2016 kom sedan React Native (https://facebook.github.io/react-native) som enligt uppgift kompilerar  appen till native-kod.

Jag har precis påbörjat en utvärdering, och kommer snart med ett resultat.