我创建了一个以UITextField编程方式创建UITextFieldviewController的属性.我需要通过屏幕上的返回和触摸来关闭键盘.我能够让屏幕触摸解除,但按下返回不起作用.
我已经看过如何使用故事板以及UITextField直接分配和初始化对象而不将其创建为属性.可以吗?
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController <UITextFieldDelegate>
@property (strong, atomic) UITextField *username;
@end
Run Code Online (Sandbox Code Playgroud)
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.view.backgroundColor = [UIColor blueColor];
self.username = [[UITextField alloc] initWithFrame:CGRectMake(100, 25, 80, 20)];
self.username.placeholder = @"Enter your username";
self.username.backgroundColor = [UIColor whiteColor];
self.username.borderStyle = UITextBorderStyleRoundedRect;
if (self.username.placeholder != nil) {
self.username.clearsOnBeginEditing = …Run Code Online (Sandbox Code Playgroud) 在模拟器上测试我的应用程序时收到此消息:
来自调试器的消息:对k数据包有意外响应:好的
这是什么意思,是我的应用程序在任何危险?
使用Xcode 6.4和7.2
我有一个3视图控制器导航,其中A呈现模态控制器B,它通过segue呈现模态控制器C. C有一个展开SEGUE回到B.它也有一个开卷回答:当我执行对C放松到B,它解开行动,但随后弹出B和追溯到答:这不是我想要的,我想在这种情况下,它留在B.下面是VC C使用的segues.
unwindCancel用于当用户点击collectionViewCell并返回VC B. prepareForUnwind只是VC A的标准"取消"按钮.
下面是在VC C中调用unwind的didSelectItem的代码.下面是VC C中的prepareForSegue.
-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
[self performSegueWithIdentifier:@"unwindCancel" sender:self];
}
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([segue.identifier isEqualToString:@"unwindCancel"]) {
GalleryDetailViewController *detailVC = segue.destinationViewController;
detailVC.colletionCount = self.indexPathToPass;
}
}
Run Code Online (Sandbox Code Playgroud)
VC B在.m文件中展开
-(IBAction)unwindCancel:(UIStoryboardSegue *)segue{
[self.collectionView scrollToItemAtIndexPath:self.colletionCount atScrollPosition:UICollectionViewScrollPositionLeft animated:YES];
}
Run Code Online (Sandbox Code Playgroud)
VC在.m文件中展开
-(IBAction)prepareForUnwind:(UIStoryboardSegue *)segue {
}
Run Code Online (Sandbox Code Playgroud) 我删除了原始的launchImage图像集.
然后转到Xcode项目部分的"App Icons and Launch Images".
我取消选择"启动图像源",然后重新选择它.我得到了"将启动图像迁移到资产目录".我选择了一个资产目录并"迁移",然后打开一个launchImage图像集.
我添加了我的文件,但随后我收到了红色编译警告.
我检查了Plist - 根本没有启动图像.
以前,我收到关于不明确内容和文件大小错误的黄色警告 - 我检查并重新检查 - 它们是正确的尺寸!
我该如何解决?
编辑:我在我的文件中找到了这个.我只是删除所选的文件夹?

我已将Crashlytics包含在我的应用中.我做了注册向导并[Fabric with:@[[Crashlytics class]]];按照我的指示初始化了CrashlyticsAppDelegate.m
我需要做什么来初始化答案以及在我的应用程序中这样做的最佳位置?我现在只想要基本的初始化.
我的 JSON 数据如下所示
\n\n{\n "latitude": 34.088051,\n "longitude": -118.296512,\n "timezone": "America/Los_Angeles",\n "daily": {\n "summary": "No precipitation throughout the week, with high temperatures rising to 92\xc2\xb0F on Friday.",\n "icon": "clear-day",\n "data": [\n {\n "time": 1535266800,\n "summary": "Mostly cloudy in the morning.",\n "icon": "partly-cloudy-day",\n "sunriseTime": 1535289854,\n "sunsetTime": 1535336915,\n "moonPhase": 0.51}\nRun Code Online (Sandbox Code Playgroud)\n\n我想从中提取时间、摘要、图标。
\n\n我创建了一个 WeatherObject 类型的类,但这就是我陷入困境的地方。如何创建结构?这些键不是蛇形的,也不是错误命名的,所以我想我可以在不使用枚举来重命名变量名的情况下逃脱。
\n\n编辑:做 - 抓住跌倒去抓住。VC 实现协议。传递给协议方法的数据在方法实现中打印,但在 do 子句中无法处理。
\n\nprotocol NetworkingDelegate: AnyObject {\n func didGetResult(data: Data?) -> Void\n}\n\n\nclass Networking: NSObject {\n\n var data: Data?\n weak var delegate: …Run Code Online (Sandbox Code Playgroud) 我有一个应用程序,用户通过隐式身份验证与Oauth 2登录到Instagram.有没有办法让用户注销或重新登录为不同的用户?
就像现在一样,当我在用户登录后调用auth URL时,会启动Safari浏览器,然后返回应用程序而不显示登录字段.我需要Safari来显示登录字段,并允许用户输入uname并在控制权传递回app之前通过.
我有一个NSMutableArray容量7.我想把每个索引a放入NSMutableArray容量6.在这6个插槽的每一个中,我想要字符A.
其他要求是我需要能够访问每个数组中的每个索引.我之前有这样的代码
-(id)init{
self = [super init];
self.array = [[NSMutableArray alloc]initWithCapacity:7];
for (NSUInteger i = 0; i < self.board.count; i++) {
NSMutableArray *subArray = [[NSMutableArray alloc]init];
for (NSUInteger i = 0; i <subBoard.count; i++) {
[subArray addObject:@"A"];
}
[self.array insertObject:subArray atIndex:i];
}
return self;
}
Run Code Online (Sandbox Code Playgroud)
问题是,当我想通过访问主数组在subArray中找到索引时,我必须进行各种转换并创建新变量以显示这些指针是NSMutableArrays.
然后我有了这个代码
#import <Foundation/Foundation.h>
@interface NewArray : NSMutableArray
@property (strong, nonatomic) NSMutableArray *column1;
@property (strong, nonatomic) NSMutableArray *column2;
@property (strong, nonatomic) NSMutableArray *column3;
@property (strong, nonatomic) NSMutableArray *column4;
@property (strong, nonatomic) …Run Code Online (Sandbox Code Playgroud) 我在AFNetorking的Reachability上有点失落,并没有找到很多好的信息.
我有一个登录Web API的应用程序.每个VC以某种方式连接到API,因此每个VC都需要具有网络访问权限.我使用AFHTTPSessionManager的子类来发出网络请求.
我很困惑在哪里放置代码 - 它只是appDelegate还是在每个VC?
这段代码有什么用?
[[AFNetworkReachabilityManager sharedManager] setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
NSLog(@"Reachability: %@", AFStringFromNetworkReachabilityStatus(status));
}];
Run Code Online (Sandbox Code Playgroud)
你在哪里使用这些方法,它们如何与上面的代码相关?
-startMonitoring
-stopMonitoring
Run Code Online (Sandbox Code Playgroud) 我想知道如何在Xcode 5中设置应用程序委托,因为它与以前的版本不同.我希望通用视图控制器文件(ViewController.h和.m)是控制我在我的应用程序委托中设置的rootViewController的文件.这是自动发生还是您需要在代码中执行某些操作?这就是我设置appDelegate.m的方法
*(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
CGRect viewRect = [[UIScreen mainScreen]bounds];
self.window = [[UIWindow alloc]initWithFrame:viewRect];
UIViewController *viewController = [[UIViewController alloc]init];
self.window.rootViewController = viewController;
[self.window makeKeyAndVisible];
Run Code Online (Sandbox Code Playgroud)
如果我希望我的rootView控制器是一个表视图控制器或其他东西,我需要先将它嵌入一个基本的VC吗?
我有这个代码
guard let url = NSURL(string: urlString) else{
print("No URL")
return
}
Run Code Online (Sandbox Code Playgroud)
该return语句产生错误
非 void 函数应该有返回值
省略return下面的错误
“守卫”主体可能不会掉落,请考虑使用“返回”或“中断”退出范围
我该如何避免这个错误?
ios ×8
objective-c ×4
xcode ×2
afnetworking ×1
arrays ×1
crashlytics ×1
instagram ×1
json ×1
keyboard ×1
llvm ×1
reachability ×1
swift ×1
swift4 ×1
uitextfield ×1
unwind-segue ×1
url-scheme ×1
xcasset ×1
xcode5 ×1
xcode6.4 ×1
xcode7.2 ×1