Archive for iPhone App

Klar til iPad wifi udvikling – Objectiv-C

Jeg har nu anskaffet mig en iPad wifi med 32gb og kan kun rose denne enhed, dog savner jeg utroligt meget iOS4 men den skulle være på vej efter flere rygtere og er blevet spåttet til nov. 2010 men lad os nu se :0)

Når det er sagt vil jeg også fortælle at jeg er klar til at udforkse iPad platformen med hensyn til udvikling, dog vil jeg også indrømme at udvikling til både iPad og iPhone er lidt svære end jeg havde forventet men hvad lære man af det? at man ikke skal være så stor i kæften ;)

Men det bliver sjovt at prøve krafter af med Objectiv-C kodesprog og iOS platformen, håber også på at kan lære eller det kan jeg men også inden for overskulig fremtid at kode til Mac OSX platformen, er utorligt imponeret over Objectiv-C kodesproget.

Skulle du side med idéer til små og sjove proejkter jeg kunne tage hul på for at lære dette sprog så kom enligt med din idé kan jo være jeg vælger idéen for at prøve kode et projekt. :)

iPhone – Objectiv-C – UIDevice

Hvis du er en af dem der ønsker at få lidt mere infomartion ud af brugeres iPhone, kan du bruge UIDevice som er en del af iPhone frameworket.

Med dette framework har du mulighed for at hente bla. serie nummer, navnet på iphonen og enhedstype, eks. iPhone, iPad eller iPod touch.

Start derfor med at lav dit UIDevice object

[code]UIDevice *myCurrentDevice = [UIDevice currentDevice];[/code]

Når det er gjort er du klar til at rode med dit UIDevice object, for at se om du har gjort det rigig prøv at brug NSLog og se om du får dit data ud.

[code]NSLog( @"%@ is an %@ and have serialnumber: %@", [myCurrentDevice name],
[myCurrentDevice model],
[myCurrentDevice uniqueIdentifier]);[/code]

iPhone – Basic SQLite

Ønsker du at vide hvordan du connecter til din database SQLite som bruges på iPhone platformen, så er der nogle ting du skal have på plads inden du går vider for at oprette, slette og udtrække data.

Det er nermlig selve forbindlsen til din SQLite database, for at kunne bruge SQLite på iPhone kræver det at du har SQLite3 frameworket tilføjet til dit projekt, filens navn er “libsqlite3.0.dylib” som du skal tilføje.

Efter det skal du tilføje følge linje i din .h fil hvor du vil benytte SQLite.

1
import "sqlite3.h"

Gå ned til din funktion viewDidLoad og tilføj følge kode.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/// Open database
UIAlertView *view;
sqlite3 *database;
 
int result = sqlite3_open("path-til-din-db", &database);
 
// If database fail to open.
if( result != SQLITE_OK )
{
NSLog(@"Database connect fail!");
 
sqlite3_close(database);
view = [[UIAlertView alloc]
initWithTitle: @"Database Error"
message: @"Failed to open database."
delegate: self
cancelButtonTitle: @"Hrm." otherButtonTitles: nil];
[view show];
[view autorelease];
return;
 
NSArray *array = [[NSArray alloc] initWithObjects: nil];
self.listData = array;
[array release];
}
else
{
// make my stuff from database.
}

Det vi gør her er at vi bruger sqlite3_open til at åbne vores forbindlse med derefter sprøger vi så vores forbindlse om alt gik godt med SQLITE_OK hvis det ikke går som forventet altså at vi ikke bliver connectet bliver der vist en alert på vores skræn ved hjælp af UIAlertView går alt godt og vi vil forsætte så kommer der ingen alert frem på vores skærm.

Håber det var forståligt og brugbart.

Basic UITableView – Xcode 4

Når der skal arbejdse med UITableView er det en god idé at vide hvordan det basic fungere inden der tænkes for meget i “hvordan får jeg database indhold puttet ind” , “hvordan retter jeg mine felter” og den slaks det er nået vi alle kender som er udvikler.

Når man først ser en mulighed vil men pluslig gerne vide de 10 andre mulighedere med det samme inden man faktisk forstår grund prencippet i det man laver.

Start med at åbne Xcode 4 og opret et nyt projekt klad dette “TableView” og vær sikker på at “Use Core Data” ikke er klikket af.

Start med at åbne din RootViewController.h fil og få den til at se ud som min.

1
2
3
4
5
6
7
8
@interface RootViewController : UITableViewController {
NSArray *listData;
}
 
@property (nonatomic, retain) IBOutlet NSArray *listData;
 
 
@end

Nu går du ind i din RootViewController.m fil.

indsæt @synthesize listData; efter din @implementation RootViewController linje hvor efter vi skal starte med at lave vores test array som skal bruges sener.

Gå til -(void)viewDidLoad og skriv følge inden i denne funktion

1
2
3
4
5
NSArray *array = [[NSArray alloc] initWithObjects: @"Sleppy", @"Sneezt", @"Bashful", nil];
 
self.listData = array;
 
[array release];

Det vi gør her er at vi definere et array hvor vi efterfulgt putter 3 objeckter i vores array, til sidst knytter vi vores array til vores listData array hvor vi så releaser vores array vi selv har lavet.

Slet nu disse linjer

1
2
3
4
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
 
return 1;
}

Nu skulle du gerne have denne funktion tilbage lige neden under

1
2
3
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
....
}

Gå ind i den og skriv følge

1
return [self.listData count];

Når det er gjort går du til – (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { … } funktionen som gerne skal se sådan ud.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
 
static NSString *CellIdentifier = @"Cell";
 
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
 
// Configure the cell...
NSUInteger row = [indexPath row];
cell.textLabel.text = [listData objectAtIndex:row];
 
return cell;
}

Du skulle genre kun tilføje disse 2 linjer

1
2
3
// Configure the cell...
NSUInteger row = [indexPath row];
cell.textLabel.text = [listData objectAtIndex:row];

for at få det til at fungere, gem dit projekt og prøv at kør programmet, når du tester programmet skal det gerne se ud som dette billede.

Starter udvikling til iPhone

Nogle af jer ved at jeg allerede er i gang med at lære at udvikle til iPhone hvor kode sproget er Objectiv-C der bliver benyttet her.

For at udvikle et iPhone App skal der her bruges Xcode som primat, med Xcode kan der også udvikles programmer til OSX og til iPad.

Det første man altid lære er at skrive en “Hello world” program, dette har jeg naturligvis også lært her til iPhone, mennn jeg syndes lige vi spriger det step over hvor jeg heller give nogle fif når jeg kommer længere i min udvikling, håber at alle kikker med her og evt. kommentere mine indlæg.