Questions tagged «ios»

iOS是在Apple iPhone,iPod touch和iPad上运行的移动操作系统。使用此标签[ios]来解决与iOS平台上的编程有关的问题。使用相关的标签[objective-c]和[swift]解决那些编程语言所特有的问题。

4
故事板-请参阅AppDelegate中的ViewController
请考虑以下情形:我有一个基于情节提要的应用程序。我将一个ViewController对象添加到情节提要中,将此ViewController的类文件添加到项目中,并在IB身份检查器中指定新类的名称。现在,我该如何从AppDelegate以编程方式引用此ViewController?我已经在相关类中创建了一个变量,并将其转换为IBOutlet属性,但是我看不到任何能够在代码中引用新ViewController的方法-按住ctrl拖动连接的任何尝试均无效。 即在AppDelegate中,我可以像这样进入基本的ViewController (MyViewController*) self.window.rootViewController 但是情节提要中包含的其他ViewController呢?

8
如何在Swift Xcode 6中更改按钮文本?
这就是我想要做的。如果您曾经玩过Halo或CoD,您就会知道可以更改武器输出的名称。 我正在做的就是这样,您可以使用文本字段更改加载名称。这就是问题所在,加载菜单中的加载名称是一个按钮(用于选择和查看有关该加载的信息),我可以这样写: @IBAction func renameClassButton(sender: AnyObject) { classTopButton.text = "\(classTopTextField)" } 除此之外,[classTopButton]是不允许使用'.text'后缀的按钮
122 ios  swift 

11
将UIButton字体大小调整为宽度
我有以下代码: UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; button.frame = CGRectMake(0.0, 0.0, 25, 25); [[button layer] setCornerRadius:5.0f]; [[button layer] setMasksToBounds:YES]; [[button layer] setBackgroundColor:[[UIColor redColor] CGColor]]; [button.titleLabel setFrame:CGRectMake(0,0, 25, 25)]; [button setTitle:[NSString stringWithFormat:@"%@", [[topics objectAtIndex:indexPath.row] unread]] forState:UIControlStateNormal]; 问题是当文本中的字符串不长时,它可以正常显示(1-2位)。但是,当它很长时(3 ++位),我只能看到一个红色按钮,里面没有文本。我该如何调整? 我不认为: [button.titleLabel setAdjustsFontSizeToFitWidth:YES]; 做这份工作,对不对?
122 ios  objective-c 

6
将NSData转换为String?
我将一个openssl私钥EVP_PKEY存储为nsdata。为此,我使用以下代码序列化为字节流 unsigned char *buf, *p; int len; len = i2d_PrivateKey(pkey, NULL); buf = OPENSSL_malloc(len); p = buf; i2d_PrivateKey(pkey, &p); 其中pkey的类型为EVP_PKEY。然后我使用下面给出的行将缓冲区“ p”中的字节存储为NSData NSData *keydata = [NSData dataWithBytes:P length:len]; 现在,我使用下面给出的代码将其转换为NSString,但是当我将其打印到控制台中时,会给出其他一些字符。 NSString *content =[ NSString stringWithCString:[keydata bytes] encoding:NSUTF8StringEncoding]; 有人可以帮忙吗? 基本上我想将EVP_PKEY存储到sqlite数据库中 我在正确的轨道上吗?谢谢。
122 iphone  ios  sqlite  openssl  nsdata 

2
初始化编码器aDecoder到底是什么?
我正在从在线课程中学习iOS开发,每次我创建自定义视图(自定义表格视图单元格,集合视图单元格等)时,讲师始终会实现此初始化程序: required init?(coder aDecoder: NSCoder) { super.init(coder: aDecoder) } 为什么我总是必须打电话给我?它有什么作用?我可以将属性放入init吗?
122 ios  swift 


8
使用uiwebview中的本地html从相对路径加载资源
我有一个带有uiwebview的非常简单的iOS应用,它加载了一个非常简单的测试页面(test.html): <html> <body> <img src="img/myimage.png" /> </body> </html> 我将此test.html文件加载到我的Web视图中: NSURL *url = [[NSBundle mainBundle] URLForResource:@"test" withExtension:@"html"]; NSString *html = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil]; NSURL *baseUrl = [NSURL fileURLWithPath:[[NSBundle mainBundle] bundlePath]]; [webView loadHTMLString:html baseURL:baseUrl]; 如果我在没有相对路径的情况下引用该图像并将引用的图像放在XCode中的Targets-> Copy Bundle Resources下的根路径中,则此方法效果很好,但是我无法使其与html文件中所示的相对路径一起使用。必须有一种方法,我有很多图像,css,javascript文件要加载到Webview中,我不想不必将所有内容都放在根目录中,也不必更改网站中的所有引用应用程式。
121 ios  uiwebview 

9
科尔多瓦应用程序无法在iPhone X(模拟器)上正确显示
我昨天在Xcode 9.0(9A235)的iPhone X Simulator上测试了基于Cordova的应用程序,但效果并不理想。首先,不是填充整个屏幕区域,而是在应用内容上方和下方都有黑色区域。更糟糕的是,在应用内容和黑色之间是两个白条。 添加cordova-plugin-wkwebview-engine这样科尔多瓦呈现使用WKWebView(不是一个UIWebView)修复了白条。由于性能和内存泄漏问题,使用我的应用程序无法从UIWebView迁移到WKWebView时,cordova-plugin-wkwebview-engine这些问题发生在将从Inapp Purchase托管内容下载的图像加载到HTML5画布中时发生(file://由于WKWebView中的安全限制,无法通过Webview 直接访问,因此图像数据必须通过cordova-plugin-file)加载。 这些屏幕快照显示了一个在<body> 上设置了蓝色背景的测试应用程序。在UIWebView的上方和下方,您可以看到白色的条,但在WKWebView中则看不到: (来源:pbrd.co) (来源:pbrd.co) 与填充整个屏幕区域的本机应用程序相比,两种Cordova Webview均显示黑色区域:



12
在UIWebView中禁用用户选择
我有一个应用程序,我将内容加载到UIWebView并显示此内容。我无法完全禁用用户交互,因为我希望用户能够单击链接。我只需要禁用用户选择。我在互联网上发现了可以使用的地方: document.body.style.webkitUserSelect='none'; 我尝试将其插入为 [self.contentView stringByEvaluatingJavaScriptFromString:@"document.body.style.webkitUserSelect='none';"]; 在 webViewDidFinishLoad: 但是,它不起作用。我仍然可以在WebView中选择和复制文本。 任何想法可能出了什么问题? 更新:这似乎仅从iOS 4.3开始发生

11
在Xcode 8 / Swift 3.0中注册推送通知?
我正在尝试让我的应用程序在Xcode 8.0中运行,并且遇到错误。我知道这段代码在swift的早期版本中可以正常工作,但是我假设在新版本中对此代码进行了更改。这是我要运行的代码: let settings = UIUserNotificationSettings(forTypes: [.Sound, .Alert, .Badge], categories: nil) UIApplication.sharedApplication().registerUserNotificationSettings(settings) UIApplication.shared().registerForRemoteNotifications() 我收到的错误是“参数标签'(forTypes :, Categories :)'与任何可用的重载都不匹配” 我可以尝试使用其他命令来使其正常工作吗?

7
如何限制UITableView行重新排序到一节
我为此感到头疼,而Google却一无所获。我最终解决了这个问题,并认为我为了下一个人在这里写下来。 您有UITableView多个部分。每个部分都是同质的,但表的整体是异构的。因此,您可能希望允许对部分中的行进行重新排序,但不能跨部分进行重新排序。也许您甚至只希望一个部分可以重新排序(这就是我的情况)。如果您像我一样看的话,UITableViewDataSourceDelegate您将找不到关于何时要在各节之间移动行的通知。当它开始移动一行时,您会得到一个(这很好),而当它已经移动行时,您就会得到一个,并且您有机会与内部内容进行同步。没有帮助。 那么如何防止各节之间重新排序呢? 我会将所做的工作作为单独的答案发布,让其他人可以发布更好的答案!

4
是否可以为UIButton的titleLabel调整x,y位置?
是否有可能调整x,y坐标为titleLabel的UIButton? 这是我的代码: UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect]; [btn setFrame:CGRectMake(0.0f, 0.0f, 100.0f, 100.0f)]; [btn setTitle:[NSString stringWithFormat:@"Button %d", i+1] forState:UIControlStateNormal]; [btn addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside]; btn.titleLabel.frame = ???

14
透明导航栏iOS
我正在创建一个应用程序,并且已经在Internet上浏览了,我想知道他们如何制作这种透明的NavigationBar,如下所示: 我在appdelegate中添加了以下内容: UINavigationBar.appearance().translucent = true 但这只会使它看起来像以下内容: 我如何使NavigationBar像第一个图像一样透明

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.