aiuto avvio applicativo

Ciao a tutti
sono nuova del forum e spero di aver postato nella sezione giusta.
Devo creare un applicativo iphone per un esame all’universita’ ma ho un problema che non riesco a risolvere:
L’applicativo appena avviato dovrebbe fare un controllo di una condizione e nel caso tale condizione sia vera, dovrebbe avviare una determinata pagina altrimenti dovrebbe avviarne un’altra. C’e qualcuno in grado di darmi un consiglio o dirmi dove posso trovare qualche tutorial o esempi a riguardo?

Scritto così è tutto molto generico…
Intanto la condizione da dove viene presa? Un file di configurazione (plist)? Un server web? uno stato dell’iphone?
E poi di che “pagine” parli? Parli di viste diverse dall’app (cioè chermate) oppure pagine web? Direi che parli di una vista…ci sono componenti per tutto, ma devi avere le idee chiare! (Magari guardati nella documentazione di xcode cos’è il componente webview).

Per il resto dovrai usare un if per verificare la condizione…ma direi che non è questo che ti serviva sapere :smiley:

Ti consiglio di vedere i progetti di esempio integrati in xcode, ce ne è proprio uno con 2 viste diverse (il primo base base base) e farle swtichare in base a una condizione è giusto 1 riga di codice! (dipende poi dalla condizione alla quale ti riferisci)

ciao grazie per la risposta provo a spiegarmi meglio :smiley: :
all’interno dell’applicativo c’e’ un database, all’avvio bisognerebbe controllare se l’utente sta accedendo per la prima volta o no. Nel caso in cui si tratta del primo accesso deve essere caricata una view dove l’utente dovra’ inserire i proprio dati che verranno memorizzati nel database, dopodiche’ verra’ mostrata la view principale.
Negli accessi successivi non deve essere piu’ mostrata la pagina dei dati ma direttamente quella “principale”(perche’ i dati sono stati gia’ memorizzati al primo accesso!).
Premetto che e’ solo da un mese che mi sono avvicinata alla programmazione iphone quindi mi risulta difficile essere piu’ chiara e piu’ tecnica nel linguaggio :smiley:
Riguardo all’esempio integrati in xcode …li ho vista ma non ho trovato niente potresti dirmi come si chiama quello a cui ti riferisci tu!
Grazie mille

Mi dispiace ma non ho più la possibilità di usare xcode da vario tempo ormai :confused:
Spulcia tra i progetti d’esempio, vedrai che lo trovi!

Anche per il database di sicuro troverai qualche esempio anche dentro xcode stesso…altrimenti con google c’è tutto quello che ti serve!

Ti consiglio questi due link:
iPhone SDK Tutorial: Reading data from a SQLite Database | dBlog.com.au
iPhone SDK Tutorial - Using SQL Lite Part I - iPhone SDK Articles

Ma devi conoscere anche un minimo l’sql e saper progettare quello che ti serve.
Se è solo come hai detto qui allora è molto semplice, potrebbe bastare un:

CREATE TABLE utente
(
      id  INT PRIMARY KEY NOT NULL,
      Nome VARCHAR(30)  NOT NULL,
      ..........
)

Poi al primo acesso fare una query come

SELECT * FROM utente

e controllare il numero dei risultati (== 0 allora primo avvio)
e infine la registrazione tramite un’inserimento del tipo:

INSERT INTO utente VALUES(.........);

con l’sql non ho problemi, mentre quello che non riesco a fare e’ dire ad un metodo che a seconda dell’esito del select deve caricare una window diversa ho provato ad inserire un if nel metodo “applicationDidFinishLaunching” ma non funziona
Grazie ancora

L’'if dentro il didinishlaunching è corretto.
Hai creato la seconda view con interface builder? dovresti avere le due view sotto forma di file xib, poi dai un’occhiata qui (la answer 2): Why won’t this code load my NIB/XIB - Stack Overflow

(e ricordati che tu dovrai usare bundle:xib, il nil era per le vecchie versioni di xcode)
Comunque tutto questo può anche essere fatto tramite “interfaccia grafica” senza codice, ma solo passando da interface builder e “trascinando” la vista.

E’ da molto che non uso più questi programmi quindi non so dirti molto altro, ti cerco un programmatore che sappia aituarti

Puoi postare del codice che hai usato? altrimenti è impossibile capire…
Comunque per mostrare le view puoi usare il metodo addSubview: di UIView o aggiungerle direttamente alla UIWindow come viene fatto sempre nel metodi presenti nella classe appdelegate.

ciao allora cerco di spiegarti un po’ meglio(ci provo:D)
allora il progetto contiene due file .xib:
1°:il primo contiene 3 viste e una sola classe controller ed quello che deve essere visualizzato la prima volta che si accede all’applicativo, qui l’utente dovra’ inserire i propri dati( che verranno memorizzati nel database) dopodiche’ potra’ accedere alla pagina(view) principale;
2°:il secondo e’ la pagina principale cioe’ quella che dovra’ essere visualizzata tutte le successive volte che si accede all’app.

quindi all’avvio bisogna fare un controllo sul database se e’ vuoto viene visualizzato il 1° altrimenti il 2°

nella classe AppDelegate:

 @implementation progetto1AppDelegate

@synthesize window;
@synthesize window1;
@synthesize tabBarController;
@synthesize viewController;
- (void)applicationDidFinishLaunching:(UIApplication *)application {
    
 if(se il database non e' vuoto)
 	[window addSubview:tabBarController.view];
else
	[window1 addSubview:viewController.view];
 
[window1 makeKeyAndVisible];
 
}

grazie

per il momento penso di aver risolto, l’errore era mooolto moolto banale ma in quanto inesperta ci puo’ stare vero?:smiley:
l’errore si vede anche su nel codice che ho postato avevo dichiarato due window e invece adesso ho capito che e’ sempra alla stessa window che aggiungo una view.
grazie lo stesso per le risposte siete stati molto gentili…il progetto e’ lungo quindi sicuramente mi rifaro’ viva per altre domande :smiley: