====== SPTextField+Justify ======
---- dataentry extension ----
type : extension
author_mail : shilo86@gmail.com Shilo White
description : A category for Sparrow 2.X that allows a bitmap SPTextField to justify align.
lastupdate_dt : 2013-07-16
compatible : v2.X
depends :
tags : text, textfield, justify, justified, justification
homepage_url : https://gist.github.com/Shilo/6017433
download_url : https://gist.github.com/Shilo/6017433/download
----
===== Alignment Property Values =====
#define SPVAlignJustify SPVAlignBottom+1
#define SPHAlignJustify SPHAlignRight+1
#define SPHAlignJustifyLastLineLeft SPHAlignJustify+1
#define SPHAlignJustifyLastLineCenter SPHAlignJustifyLastLineLeft+1
#define SPHAlignJustifyLastLineRight SPHAlignJustifyLastLineCenter+1
===== Sample =====
{{http://f.cl.ly/items/1N0z27322T0H2Y3L0s43/Screen%20Shot%202013-07-16%20at%208.18.45%20PM.png}}
===== Usage =====
//
// Game.m
// AppScaffold
//
#import "Game.h"
#import "SPTextField+Justify.h"
@implementation Game
- (id)init
{
if ((self = [super init]))
{
Sparrow.stage.color = 0xffffff;
CGRect screenBounds = [UIScreen mainScreen].bounds;
float stageWidth = screenBounds.size.height;
float stageHeight = screenBounds.size.width;
NSString *text = @"Sparrow does not cost a dime. Download and use it right away, no strings attached. Drop your inhouse engine and focus on your games right now!";
[SPTextField registerBitmapFontFromFile:@"Helvetica.fnt"];
for (SPHAlign hAlign=SPHAlignLeft; hAlign<=SPHAlignJustifyLastLineRight; hAlign++) {
for (SPVAlign vAlign=SPVAlignTop; vAlign<=SPVAlignJustify; vAlign++) {
NSString *hText = [NSString stringWithFormat:@"hAlign:\n%@\n\n", [self hAlignToString:hAlign]];
NSString *vText = [hText stringByAppendingFormat:@"vAlign:\n%@\n\n", [self vAlignToString:vAlign]];
SPTextField *textField = [SPTextField textFieldWithText:[vText stringByAppendingString:text]];
textField.fontName = @"Helvetica";
textField.fontSize = 11;
textField.width = stageWidth/7;
textField.height = stageHeight/4;
textField.x = hAlign*textField.width;
textField.y = vAlign*textField.height;
textField.hAlign = hAlign;
textField.vAlign = vAlign;
textField.border = YES;
if (vAlign >= SPVAlignJustify || hAlign >= SPHAlignJustify)
textField.color = 0x0000ff;
[self addChild:textField];
}
}
}
return self;
}
- (NSString *)hAlignToString:(SPHAlign)hAlign {
if (hAlign == SPHAlignLeft)
return @"SPHAlignLeft";
else if (hAlign == SPHAlignCenter)
return @"SPHAlignCenter";
else if (hAlign == SPHAlignRight)
return @"SPHAlignRight";
else if (hAlign == SPHAlignJustify)
return @"SPHAlignJustify";
else if (hAlign == SPHAlignJustifyLastLineLeft)
return @"SPHAlignJustifyLastLineLeft";
else if (hAlign == SPHAlignJustifyLastLineCenter)
return @"SPHAlignJustifyLastLineCenter";
else if (hAlign == SPHAlignJustifyLastLineRight)
return @"SPHAlignJustifyLastLineRight";
else
return @"unknown";
}
- (NSString *)vAlignToString:(SPVAlign)vAlign {
if (vAlign == SPVAlignTop)
return @"SPVAlignTop";
else if (vAlign == SPVAlignCenter)
return @"SPVAlignCenter";
else if (vAlign == SPVAlignBottom)
return @"SPVAlignBottom";
else if (vAlign == SPVAlignJustify)
return @"SPVAlignJustify";
else
return @"unknown";
}
@end
===== Changelog =====
* //2013/07/16 08:29//: First public version
===== Source Code =====
%gist(6017433)%
===== Discussion =====
//No comments so far. Feel free to edit this part of the page.//