Corsi di programmazione web e mobile online
Pagina 1 di 2 12 UltimaUltima
Risultati da 1 a 10 di 15

Discussione: Form con UITableView

  1. #1
    Administrator L'avatar di ignazioc
    Data Registrazione
    Jul 2010
    Messaggi
    3,912

    Form con UITableView

    Corso online di programmazione android e java
    Hei, dopo il piccolo esempio realizzato per neronorx nell'altro thread (http://goo.gl/JrNLR) stasera mi sono messo a giocare per creare una tableview più comoda da utilizzare come classica form, anche per -sinceramente- probabilmente mi servirà in ufficio nei prossimi giorni.

    L'idea è quella di creare qualcosa di simile a QuickDialog (http://escoz.com/open-source/quickdialog) che però offra anche un sistema di databinding come *dovrebbe* avere SensibleCocoa (http://sensiblecocoa.com/). Il condizionale è d'obbligo perché non ho né provato nessuno dei due.
    In pratica utilizzando il binding basterebbe dire alla tabella "mostra questo oggetto qui" e la tabella viene creata automaticamente, inoltre se viene modificata una property dell'oggetto la modifica viene automaticamente mostrata nella tabella e viceversa.
    Purtroppo noi programmatori iOS non siamo fortunati come gli utenti mac, dove il binding è presente e funzionante "out of the box".


    Ah...ricordo per chi si fosse messo solo adesso in ascolto che QuickDialog è free, mentre sensiblecocoa vuole quasi un rene.

    Il progetto è proprio all'inizio (e vorrei vedere un ora di lavoro!), non vale la pena distribuire adesso il codice ma potete farvi un'idea da questo screen



    Il prossimo passo è ovviamente quello di mostrare anche proprietà diverse dalle NSString facendo uso di switch, slider etc.
    Ma la cosa poi più interessante sarà quella di fare un po' di introspezione sul modello (possibilissima grazie all'objective-c runtime) e generare automaticamente le "celle" giuste in funzione del tipo di property.

    Ditemi se una volta terminato lo devo rilasciare free o a pagamento

    La mia libreria su anobii e la wishlist su amazon.co.uk e il mio hosting provider

  2. #2
    so che può sembrare strano ma recentemente pare che si facciano le stesse cose te ed io... forse perché stiamo lavorando a progetti concorrenti?
    comunque sto facendo una roba simile, anche se basata su un descrittore di dati "proprietario". come spunto di discussione posso dirti che per motivi di configurabilità grafica io ho scelto di utilizzare xib diversi (in caso di richieste diverse disegno un nuovo xib, non devo modificare il codice che genera la view).

    more to come...
    il Malvagio Dottor Prosciutto
    @theEvilDocHam

    When you dance with the elephants is YOUR problem not get stomped!

    Chiedi anche tu che il 5 ottobre (all'americana 10 5, traslitterato in iOS) sia festa mondiale dei dev iOS! #iOS105

  3. #3
    Administrator L'avatar di ignazioc
    Data Registrazione
    Jul 2010
    Messaggi
    3,912
    Mah..ti dirò questa cosa viene fuori da una considerazione: sono stato spesso troppo accondiscendente con i grafici e la cosa non è stata produttiva alla fine della qualità del prodotto. Sia chiaro non che il design non sia importante, il design è fondamentale! ma deve essere un design "nativamente digitale".
    Tentare di portare dentro le applicazioni un design proveniente da un know-how di altro tipo porta ad avere problemi sia dal punto di vista dello sviluppo perché può essere tecnicamente difficile fare alcune cose, sia in termini di versatilità e flessibilità al cambiamento.

    Faccio un esempio: una tabella di quel genere, disegnata come si deve, va bene per un customer con 10 campi, con 15 e con 100 non devi modificare nulla. Se invece fai una scrollview con la label posizionate a manina via codice, tentando di allineare i valori a sinistra, di fianco alle etichette...beh insomma...appena devi aggiungere un campo di metti a piangere.

    La mia libreria su anobii e la wishlist su amazon.co.uk e il mio hosting provider

  4. #4
    io ho la fortuna di lavorare con un paio di grafiche molto in gamba (poi sarà il fatto che siano donne che mi rende più accondiscendete, non so ) e che hanno ben capito la natura "touch" i quello che facciamo, ma al di fuori di questo, una tableview con o senza celle custom credo che sia la cosa più semplice per gestire form "variabili".
    La mia struttura di definizione è un oggetto del tipo {domanda, tipo risposta, valore default, valore immesso}, dove domanda è la parte sinistra della cella, la descrizione e risposta è la parte destra, che può essere come caso limite anche solo una stringa informativa.
    Ho preferito un approccio "descrittivo" perché nel mio caso 1) quei dati devono poi finire in un json, quindi tanto vale averlì già così 2) è più semplice e chiunque ci può mettere poi le mani.

    un'ultima cosa: gli xib diversi mi permettono di fare adattamenti richiesti dai clienti (nel mio caso sono loro che "rompono" più che i grafici) senza dover modificare il codice.
    il Malvagio Dottor Prosciutto
    @theEvilDocHam

    When you dance with the elephants is YOUR problem not get stomped!

    Chiedi anche tu che il 5 ottobre (all'americana 10 5, traslitterato in iOS) sia festa mondiale dei dev iOS! #iOS105

  5. #5
    tra l'altro ti segnalo questo interessante articolo che potrebbe tornarti utile per analizzare in automatico il tipo degli oggetti: http://www.touch-code-magazine.com/JSONModel/
    il Malvagio Dottor Prosciutto
    @theEvilDocHam

    When you dance with the elephants is YOUR problem not get stomped!

    Chiedi anche tu che il 5 ottobre (all'americana 10 5, traslitterato in iOS) sia festa mondiale dei dev iOS! #iOS105

  6. #6
    Administrator L'avatar di ignazioc
    Data Registrazione
    Jul 2010
    Messaggi
    3,912
    io ho implementato una cosa simile a questo jsonmodel con alcune differenze, per esempio visto che i campi del json e quelli del modello hanno nomi diversi ho alcune regole di "mapping" per esempio il modello "customer" sa che la sua proprietà "server_id" corrisponde alla chiave "id" del json.

    una domanda ot, visto che tu campi con i json ti sei trovato un tool grafico che ti permette di gestirli? certe volte mi piacerebbe qualcosa di simile a come xcode gestisce i file plist.

    La mia libreria su anobii e la wishlist su amazon.co.uk e il mio hosting provider

  7. #7
    dall'app store ho scaricato Jason (bel gioco di parole col protagonista di una nota serie di film horror) che è semplice semplice ma fa quel che serve.
    Poi ci sono altri tool più complessi ma dipende dalle tue necessità.
    il Malvagio Dottor Prosciutto
    @theEvilDocHam

    When you dance with the elephants is YOUR problem not get stomped!

    Chiedi anche tu che il 5 ottobre (all'americana 10 5, traslitterato in iOS) sia festa mondiale dei dev iOS! #iOS105

  8. #8
    Administrator L'avatar di ignazioc
    Data Registrazione
    Jul 2010
    Messaggi
    3,912
    Citazione Originariamente Scritto da the Evil Doctor Ham Visualizza Messaggio
    dall'app store ho scaricato Jason (bel gioco di parole col protagonista di una nota serie di film horror) che è semplice semplice ma fa quel che serve.
    Poi ci sono altri tool più complessi ma dipende dalle tue necessità.
    "Jason has been discontinued"

    necessità...beh il collapse e il check sulla validità del file.

    La mia libreria su anobii e la wishlist su amazon.co.uk e il mio hosting provider

  9. #9
    Citazione Originariamente Scritto da ignazioc Visualizza Messaggio
    Mah..ti dirò questa cosa viene fuori da una considerazione: sono stato spesso troppo accondiscendente con i grafici e la cosa non è stata produttiva alla fine della qualità del prodotto. Sia chiaro non che il design non sia importante, il design è fondamentale! ma deve essere un design "nativamente digitale".
    Tentare di portare dentro le applicazioni un design proveniente da un know-how di altro tipo porta ad avere problemi sia dal punto di vista dello sviluppo perché può essere tecnicamente difficile fare alcune cose, sia in termini di versatilità e flessibilità al cambiamento.

    Faccio un esempio: una tabella di quel genere, disegnata come si deve, va bene per un customer con 10 campi, con 15 e con 100 non devi modificare nulla. Se invece fai una scrollview con la label posizionate a manina via codice, tentando di allineare i valori a sinistra, di fianco alle etichette...beh insomma...appena devi aggiungere un campo di metti a piangere.

    Come sai sono a cavallo della barricata, un po' di qui e un po' di la, solitamente riassumo la questione così... "una donna? inteligente sicuramente... se poi è anche figa ancora meglio!"
    sono comunque d'accordo con quanto avete detto e infatti il progresso sta nel "grigio" non nel bianco, non nel nero.

    Ma la domanda è, tu che hai più esperienza professionale in questo campo, quanti grafici conosci che capiscono il tuo ragionamento? quanti programmatori capiscono il mio? Forse la differenza non è nella professione ma nel tipo di mentalità...

  10. #10
    Administrator L'avatar di ignazioc
    Data Registrazione
    Jul 2010
    Messaggi
    3,912
    Corso online di programmazione android e java
    Citazione Originariamente Scritto da Acunamatata Visualizza Messaggio
    Come sai sono a cavallo della barricata, un po' di qui e un po' di la, solitamente riassumo la questione così... "una donna? inteligente sicuramente... se poi è anche figa ancora meglio!"
    sono comunque d'accordo con quanto avete detto e infatti il progresso sta nel "grigio" non nel bianco, non nel nero.

    Ma la domanda è, tu che hai più esperienza professionale in questo campo, quanti grafici conosci che capiscono il tuo ragionamento? quanti programmatori capiscono il mio? Forse la differenza non è nella professione ma nel tipo di mentalità...
    sono due mondi quasi inconciliabili, non a caso sono due emisferi celebrali diversi.
    Togliamo di mezzo il problema del tempo/costo e supponiamo di avere un budget infinito.
    Anche in questo caso se il layout è pensato e realizzato con la testa da grafico "vecchio stampo" ci saranno difficoltà perché è normale che un grafico odia vedere ritorni a capo casuali...spazi bianchi dovuti a dati troppo corti, puntini di sospensione dovuti alla troncatura delle label ma che soluzione c'è a tutto questo?
    Per non parlare della localizzazione...ottimizzi la grafica al pixel e poi ti accorgi che in spagnolo la parola non ci sta.

    In ogni caso bene che ti vada, fatto il tuo layout usando codice e interfacebuilder come fosse photoshop....alla prima virgola che devi cambiare nel codice ti devi mettere a rifare tutto da capo.

    La mia libreria su anobii e la wishlist su amazon.co.uk e il mio hosting provider

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •