我的问题是我正在寻找使用storyboard和xib的方法.但我找不到以编程方式加载和显示故事板的正确方法.Project开始使用xib进行开发,现在很难将所有xib文件嵌套在storyboard中.所以我在代码中寻找一种方法,比如alloc, init, push
用于viewControllers.在我的情况下,我在故事板中只有一个控制器:UITableViewController
它有静态单元格,其中包含我想要显示的一些内容.如果有人知道在没有大量重构的情况下使用xib和storyboard工作的正确方法,我将非常感谢您的帮助.
我只需要UIView
使用代码手动查看同一故事板文件中的控制器.我使用故事板制作所有表格和连接.我的应用程序在导航控制器中启动,它为我提供了访问UIView
(LoginViewController
)然后它转到标签栏控制器,它提供4 UIViews
.根据每个UIView
我.h
和.m
文件.我知道segue方法,很简单,但我需要手动方法.也许我做错了什么.
我试图使用此方法推送视图控制器IBAction
:
[self.view pushViewController:LoginViewController animated:YES];
Run Code Online (Sandbox Code Playgroud)
但它出错了:
意外的接口名称'LoginViewController':预期的表达式
花了很多时间才弄清楚出了什么问题,但我没有成功.这是我的RollEnemyController.m
档案:
// RollEnemyController.m
#import "RollEnemyController.h"
#import "LoginViewController.h"
@implementation RollEnemyController;
@synthesize AttackButtonPressed;
- (IBAction)AttackButtonPressed:(id)sender {
LoginViewController* controller = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];
[self.view pushViewController:controller];
}
@end
Run Code Online (Sandbox Code Playgroud)
这是头文件:
// RollEnemyController.h
#import <UIKit/UIKit.h>
@interface RollEnemyController : UIViewController
- (IBAction)RollButtonPressed:(id)sender;
@property (weak, nonatomic) IBOutlet UIButton *AttackButtonPressed;
@end
Run Code Online (Sandbox Code Playgroud) 我需要一种调整UIImage的方法,就像在photoshop中使用"最近邻居"重新采样一样.我正在寻找一些,但我发现的一切都是关于CoreGraphics厚度来改善双三次重采样质量.我的应用程序中有像素风格的设计,我用像素创建的很多东西然后用x5乘数放大(这需要花费很多时间,所以我甚至接近为Photoshop编写脚本).例如:
>
但我真的不需要重新取样的结果:
也许有人会告诉我正确的方法.
我在AppDelegate中UIBarButtonItem
通过appearance
代理设置标题字体:
[[UIBarButtonItem appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:
[UIFont fontWithName:@"Segoe Print" size: 14.0], UITextAttributeFont,
DEF_TITLE_COLOR,UITextAttributeTextColor,
[UIColor colorWithRed:100/255 green:128/255 blue:43/255 alpha:0.4], UITextAttributeTextShadowColor,
[NSValue valueWithUIOffset:UIOffsetMake(0, 1)], UITextAttributeTextShadowOffset, nil]
forState:UIControlStateNormal&UIControlStateHighlighted&UIControlStateDisabled];
Run Code Online (Sandbox Code Playgroud)
之后我presentViewController::
在我的应用程序的某个地方打电话.条形按钮显示正确的字体和背景图像,我在此ViewController中设置(不通过外观):
但是当我按下"加入"按钮时,会显示标准的非自定义UIAlertView,并且在它出现在屏幕上之后我的barButton字体变为...标准?颜色也看起来像色彩.我不知道我做错了什么,尝试了很多东西来解决它:
此错误仅出现在iOS7上.
我试图解析来自Web服务器的响应数据.我正在使用Xcode 4.2.
NSLog(@"Establishing connection...");
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init]; [request setURL:[NSURL URLWithString:@"example.com/test.php"]]; [request setHTTPMethod:@"GET"];
accept = @"Kokokoko";
NSLog(@"Adding value for HTTP Header");
[request addValue:accept forHTTPHeaderField: @"Accept"];
NSLog(@"Sending request...");
//send request & get response
returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSLog(@"Request sent");
Run Code Online (Sandbox Code Playgroud)
然后我想使用returnData来解析JSON响应.它应该是
["Test", "42", "OK"]
Run Code Online (Sandbox Code Playgroud)
所以我试图使用NSDictionary和JSONValue等技巧,但我没有成功.也许这个问题有一个简单的解决方案?
我正在尝试使用以下代码段解密文件,该文件使用32字节密钥加密.因此,当我尝试加密文件数据时,一切正常.但是当我尝试解密时,程序甚至不会if (cryptStatus == kCCSuccess)
在CryptoExtensions.m中传递条件.我真的很累,想出一个问题.我试图使用Base64解码,但我的文件以UTF8编码保存,所以当我把它的内容放在NSData的日志中时我没有问题:
NSData *fileData = [[[NSData alloc] initWithContentsOfFile:destPath] autorelease];
NSLog(@"File data:%@",[[NSString alloc] initWithData:fileData encoding:NSUTF8StringEncoding]);
Run Code Online (Sandbox Code Playgroud)
但是当我试图解密它时,我nil
从CryptoExtensions方法获得:
NSData *aesResponse = [fileData AES256DecryptWithKey:@"4QXcCZlgRAIchiaqkMVpF3nkpARmdL3z"];
NSLog(@"AES:%@",[[NSString alloc] initWithData:aesResponse encoding:NSUTF8StringEncoding]);
Run Code Online (Sandbox Code Playgroud)
这是crypto片段的内容:
CryptoExtensions.h
#import <Foundation/Foundation.h>
@interface NSData (CryptoExtensions)
- (NSData*)AES256EncryptWithKey:(NSString*)key;
- (NSData*)AES256DecryptWithKey:(NSString*)key;
@end
Run Code Online (Sandbox Code Playgroud)
CryptoExtensions.m
#import "CryptoExtensions.h"
#import <CommonCrypto/CommonCryptor.h>
@implementation NSData (CryptoExtensions)
- (NSData*)AES256EncryptWithKey:(NSString*)key {
// 'key' should be 32 bytes for AES256, will be null-padded otherwise
char keyPtr[kCCKeySizeAES256 + 1]; // room for terminator (unused)
bzero(keyPtr, sizeof(keyPtr)); // fill …
Run Code Online (Sandbox Code Playgroud)