Многое из того, что вам нужно, уже готово для вас, у вас уже есть обработчики щелчков, поэтому, когда щелкают 0:
blockquote>if (mouseIsPressed && (mouseX > 0 && mouseX < w/5 && mouseY > h1*6.6 && mouseY < h)) { fill(255); } else { fill(0); } }
Что бы я сделал это создание массива для пользовательского ввода, и каждая кнопка, которую пользователь нажимает, просто добавляет ее в массив
let userInput = []; // declared above the setup function .... if (mouseIsPressed && (mouseX > 0 && mouseX < w/5 && mouseY > h1*6.6 && mouseY < h)) { userInput.push(0); // add the nubmer to the array fill(255); } else { fill(0); }
Затем вы можете перебрать этот массив в цикле отрисовки, чтобы вывести его, что-то вроде: [115 ]
let startX = 0; for (let input of userInput) { text(input, startX, 100); startX += 10; }
Этот ссылка содержит решение ниже. CF какао сделал, чтобы CFXMLCreateStringByUnescapingEntities функционировал, но это не доступно на iPhone.
@interface MREntitiesConverter : NSObject <NSXMLParserDelegate>{
NSMutableString* resultString;
}
@property (nonatomic, retain) NSMutableString* resultString;
- (NSString*)convertEntitiesInString:(NSString*)s;
@end
@implementation MREntitiesConverter
@synthesize resultString;
- (id)init
{
if([super init]) {
resultString = [[NSMutableString alloc] init];
}
return self;
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)s {
[self.resultString appendString:s];
}
- (NSString*)convertEntitiesInString:(NSString*)s {
if (!s) {
NSLog(@"ERROR : Parameter string is nil");
}
NSString* xmlStr = [NSString stringWithFormat:@"<d>%@</d>", s];
NSData *data = [xmlStr dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];
NSXMLParser* xmlParse = [[[NSXMLParser alloc] initWithData:data] autorelease];
[xmlParse setDelegate:self];
[xmlParse parse];
return [NSString stringWithFormat:@"%@",resultString];
}
- (void)dealloc {
[resultString release];
[super dealloc];
}
@end
MREntitiesConverter не работает для экранирования искаженного xml. Ошибка при использовании простого URL:
http://www.google.com/search?client=safari&rls=en&q=fail&ie=UTF-8&oe=UTF-8
Указанный выше MREntitiesConverter - это инструмент для удаления HTML, а не кодировщик.
Если вам нужен кодировщик, перейдите сюда: Кодировать NSString для XML / HTML
Посмотрите мою категорию NSString для XMLEntities . Существуют методы для декодирования сущностей XML (включая все ссылки на символы HTML), кодирования сущностей XML, удаления тегов и удаления новых строк и пробелов из строки:
- (NSString *)stringByStrippingTags;
- (NSString *)stringByDecodingXMLEntities; // Including all HTML character references
- (NSString *)stringByEncodingXMLEntities;
- (NSString *)stringWithNewLinesAsBRs;
- (NSString *)stringByRemovingNewLinesAndWhitespace;
Это простая в использовании реализация категории NSString:
Она далеко не полная, но вы можете добавить некоторые недостающие сущности отсюда: http://code.google.com/p/statz/source/browse/trunk/NSString%2BHTML.m
Usage:
#import "NSString+HTML.h"
NSString *raw = [NSString stringWithFormat:@"<div></div>"];
NSString *escaped = [raw htmlEscapedString];