Hauptmenü

Werkzeuge

Kategorien

Archiv

UIButton innerhalb eines UIScrollView

Erstellt in IPhone SDK am 30. November 2011 vom Daschmi

Hat mein einen oder mehere UIButtons innerhalb eines UIScrollView so bekommt man das Problem das man über dem Button nicht scrollen kann. Dies kann durch folgende Methode auf dem UIScrollView abgeändert werden:

[sImageView setDelaysContentTouches:NO];

Alle UIViews von einem UIView entfernen

Erstellt in IPhone SDK am 30. November 2011 vom Daschmi

Um alle Views von einem anderen View zu entfernen kann folgender Code verwendet werde:

for (UIView *view in sImageView.subviews)
{
  [view removeFromSuperview];
}

Längen- und Breitengrade mittels der Google API aus der Adresse bestimmen

Erstellt in Allgemein am 28. November 2011 vom Daschmi

Mit php und curl kann man mit folgender Funktion einfach die Längen- und Breitengrade einer Klartextadresse bestimmen:

function getLatLong($plz, $ort, $street, $nr)
	{

		$google_api_key = “;
		$query = $street.‘ ‚.$nr.‘, ‚.$plz.‘ ‚.$ort; 

		$str = array(‚Accept-Language: ‚.$_SERVER["HTTP_ACCEPT_LANGUAGE"]);

		$curl_req = curl_init();

		curl_setopt($curl_req, CURLOPT_URL, ‚http://maps.google.com/maps/geo?q=‘.rawurlencode($query).’&output=csv&key=‘.$google_api_key);
		curl_setopt($curl_req, CURLOPT_HTTPHEADER, $str);
		curl_setopt($curl_req, CURLOPT_CONNECTTIMEOUT, 4);
		curl_setopt($curl_req, CURLOPT_RETURNTRANSFER, TRUE);

		$curl_res = curl_exec($curl_req);
		$ret = explode(‚,‘, $curl_res);

		return array($ret[2], $ret[3]);

	} // function getLatLong($plz, $ort, $street, $nr)

Automatische Höhe eines UILabels

Erstellt in IPhone SDK am 25. November 2011 vom Daschmi

Um ein UILabel automatisch so hoch zu machen wie es der Inhalt erfordert kann folgender Code verwendet werden:

UILabel *lTitel = [[UILabel alloc] initWithFrame:CGRectMake(120, 0, 190, 0)];
NSString *text = @"Laanger Text mit vielen vielen Wörtern der nicht in das Label passt";
[lTitel setText:text];
[lTitel setBackgroundColor:[UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.0]];
[lTitel setNumberOfLines:0];
[lTitel setFont:[UIFont fontWithName:@"Helvetica-Bold" size:11]];
CGSize labelsize = [text sizeWithFont:lTitel.font constrainedToSize:CGSizeMake(190, 2000.0) lineBreakMode:UILineBreakModeWordWrap];
lTitel.frame = CGRectMake(120, 10, 190, labelsize.height);

XML Verarbeitung mit dem IPhone

Erstellt in IPhone SDK am 20. November 2011 vom Daschmi

Um eine XML Datei mit dem IPhone SDK zu verarbeiten kann der NSXMLParser in Verbingung mit dem Interface NSXMLParserDelegate verwendet werden. Möchte man beispielsweise eine XML Datei aus dem Web verarbeiten so kann folgender Aufruf verwendet werden:

dataParser = [[NSXMLParser alloc] initWithContentsOfURL:[NSURL URLWithString:strURL]];
[dataParser setDelegate:self];
[dataParser parse];
[dataParser release];

In dem Beispiel implementiert die Klasse des aufrufenden Objekts das Interface NSXMLParserDelegate.

Mit folgenden Funktionen kann man Textinhalte aus den XML Knoten verarbeiten:


- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName attributes:(NSDictionary *)attributeDict
{

 if ([elementName isEqualToString:@"immobilie"])
 {

 immobilie = [[Immobilie alloc] init];

 }

 strPath = [strPath stringByAppendingPathComponent:elementName];

}

- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string {

 if ([strPath isEqualToString:@"openimmo/immobilie/geo/plz"])
 {
 NSLog(string);
 }

}

- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{

 strPath = [strPath stringByDeletingLastPathComponent];

}

Im Beispiel wird in der Variable strPath der Pfad innerhalb des XML gespeichert.