我想知道是否有一些新的和令人敬畏的可能性来获得Swift /"新"可可中两个NSDates之间的天数?
就像在Ruby中我会这样做:
(end_date - start_date).to_i
Run Code Online (Sandbox Code Playgroud) 我即将发布一个Rails应用程序,作为最后一项任务,我不想设置robots.txt文件.我找不到有关如何为Rails应用程序正确编写路径的信息.
起始路径始终是Rails应用程序或app文件夹的根路径吗?那我怎么会不允许例如img文件夹?
我是否必须在应用程序文件夹中编写路径,或者在网站上查看路径的样子,例如http://example.com/admin?
我一直在使用崇高文本的rails项目并切换到rubymine.它说,没有安装项目中需要的一些宝石.好吧,我试图安装它们,但它失败了,并且错误地说使用的ruby版本不是gem文件中指定的版本.
当我进入时ruby -v
,它看起来像是相同的版本.然后我尝试重新安装ruby版本(2.0.0),因为这并没有带来成功,我已经安装了2.1.0,希望它能设置正确的路径和一切.
当我现在尝试进入时bundle
,我收到以下错误:
bash: /Users/user/.rvm/gems/ruby-2.0.0-p353/bin/bundle: /Users/user/.rvm/rubies/ruby-2.1.0/bin/ruby: bad interpreter: No such file or directory
Run Code Online (Sandbox Code Playgroud)
版本2.1.0甚至不再安装.我已经搜索了很长时间的解决方案,但在我的情况下没有什么真正有用.你会如何解决这个错误?据我所知,我理解问题和我读过的答案,bundle命令使用的某种路径链接设置错误了吗?
我正在使用rvm版本的ruby.
ruby -v
说'ruby 2.0.0p353(2013-11-22修订版43784)[x86_64-darwin12.5.0]
rvm list
说
ruby-1.9.2-p320 [ x86_64 ]
ruby-1.9.3-p0 [ x86_64 ]
ruby-1.9.3-p392 [ x86_64 ]
ruby-1.9.3-p448 [ x86_64 ]
ruby-2.0.0-p0 [ x86_64 ]
ruby-2.0.0-p247 [ x86_64 ]
=* ruby-2.0.0-p353 [ x86_64 ]
Run Code Online (Sandbox Code Playgroud) 我已经更新了我的"旧"Objective-C应用程序以使用具有大小类的新故事板,将部署目标设置为iOS 8并将新二进制文件上载到App Store.尽管如此,App Store仍未显示"此应用针对iPhone 6和6 plus进行了优化"的文字.该文仅提到iPhone 5S及以下所有内容.
为了让iPhone 6获得批准,我该怎么做?
我正在使用以下代码在Epson TM-T20
使用Epson ePOS SDK for iOS
SDK打印内容.问题是应用程序只打印一次.必须重新启动应用程序才能再次打印.代码有什么问题?
printer = Epos2Printer(printerSeries: 2, lang: 1)
printer?.setReceiveEventDelegate(self)
printer?.addText("text")
printer!.connect("TCP:192.168.1.185", timeout:Int(EPOS2_PARAM_DEFAULT))
printer!.beginTransaction()
printer?.sendData(Int(EPOS2_PARAM_DEFAULT))
printer?.endTransaction()
// printer?.disconnect()
printer?.clearCommandBuffer()
printer?.setReceiveEventDelegate(nil)
Run Code Online (Sandbox Code Playgroud)
尽管在文档中使用,使用printer?.disconnect()
使应用程序冻结,所以我不得不评论它.
如果您想查看API文档,SDK下载中有一个PDF .
更新: 基于答案的更新代码(应用程序仍然冻结):
func printReceipt() {
var printer: Epos2Printer?
printer = Epos2Printer(printerSeries: 2, lang: 1)
if printer == nil {
print(“Printer not found!! 11")
}
printer?.setReceiveEventDelegate(self)
printer?.addTextFont(2)
printer?.addTextSize(1, height: 1)
printer?.addText(“My Text")
printer?.addFeedUnit(10)
printer?.addCut(0)
var result: Int = Int(EPOS2_SUCCESS.rawValue)
result = Int(printer!.connect("TCP:192.168.1.185", timeout:Int(EPOS2_PARAM_DEFAULT)));
result = …
Run Code Online (Sandbox Code Playgroud) 我试图逐个字符地循环NSString,但我得到一个EXC_BAD_ACCESS错误.你知道如何做到这一点吗?我一直在谷歌搜索几个小时,但无法弄清楚.
这是我的代码(.m):
self.textLength = [self.text length];
for (int position=0; position < self.textLength; position++) {
NSLog(@"%@", [self.text characterAtIndex:position]);
if ([[self.text characterAtIndex:position] isEqualToString:@"."]){
NSLog(@"it's a .");
}
}
Run Code Online (Sandbox Code Playgroud)
非常感谢!
我想跑
env RAILS_ENV=test bundle exec rake db:migrate
并得到以下错误
Your Ruby version is 2.1.7, but your Gemfile specified 2.2.3
ruby -v
给我
ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin15]
我正在使用rbenv,如果这很重要的话.rbenv versions
给出以下内容:
system
* 2.2.3 (set by /Users/thatsme/Projects/demoproject/.ruby-version)
所以我没有ruby 2.1.7
安装.Spring没有运行而且我已经运行了rbenv rehash
.然后bundler gem
安装.我对此很疯狂.有人可以告诉我为什么使用错误的ruby版本?谢谢!
我正在使用魔法记录框架来保存用户设置.现在,我第一次想要在后台线程中保存东西.在Magical Record的github页面上是一个我不完全理解的示例片段:
Person *person = ...;
[MagicalRecord saveInBackgroundWithBlock:^(NSManagedObjectContext *localContext){
Person *localPerson = [person MR_inContext:localContext];
localPerson.firstName = @"John";
localPerson.lastName = @"Appleseed";
}];
Run Code Online (Sandbox Code Playgroud)
为什么需要第一行?我不能完全在块中创建Person吗?谢谢!
我正在使用WebRTC在两个用户之间建立视频聊天.我想拍摄localView
视图的快照,其中显示了其中一个人.
这是我的课程configureLocalPreview
,它将视频流与UIViews连接起来:
@IBOutlet var remoteView: RTCEAGLVideoView!
@IBOutlet var localView: UIView!
var captureSession: AVCaptureSession?
var videoSource: RTCAVFoundationVideoSource?
var videoTrack: RTCVideoTrack?
func configureLocalPreview() {
self.videoTrack = self.signaling.localMediaStream.self.videoTracks.first as! RTCVideoTrack?
self.videoSource = (self.videoTrack?.source as? RTCAVFoundationVideoSource)
self.captureSession = self.videoSource?.self.captureSession
self.previewLayer = AVCaptureVideoPreviewLayer.init(session: self.captureSession)
self.previewLayer.frame = self.localView.bounds
self.localView.layer.addSublayer(self.previewLayer)
self.localView.isUserInteractionEnabled = true
//self.localView.layer.position = CGPointMake(100, 100);
}
Run Code Online (Sandbox Code Playgroud)
在我想要访问快照的地方,我打电话给:
self.localView.pb_takeSnapshot()
Run Code Online (Sandbox Code Playgroud)
pb_takeSnapshot
来自UIView扩展,我在另一篇文章中找到了它.它的定义如下:
extension UIView {
func pb_takeSnapshot() -> UIImage {
UIGraphicsBeginImageContextWithOptions(bounds.size, false, UIScreen.main.scale)
drawHierarchy(in: self.bounds, afterScreenUpdates: true)
let image = UIGraphicsGetImageFromCurrentImageContext()!
UIGraphicsEndImageContext()
return …
Run Code Online (Sandbox Code Playgroud) 为了解决与此无关的问题,我做了一个bundle install --path vendor/cache
. 现在,每次我使用时bundle install
,gems 都会被安装到“供应商/缓存”中。我怎样才能恢复这个以便bundle install
将 gems 安装到普通目录中?
更新
bundle install --system
没有区别。