在Objective-C中,可以将符合协议的类指定为方法参数.例如,我可以有一个只允许UIViewController
符合的方法UITableViewDataSource
:
- (void)foo:(UIViewController<UITableViewDataSource> *)vc;
Run Code Online (Sandbox Code Playgroud)
我无法在Swift中找到一种方法(也许它还不可能).您可以使用指定多个协议func foo(obj: protocol<P1, P2>)
,但是如何要求对象也是特定类?
如何重命名文件,将文件保存在同一目录中?
我有一个包含文件完整路径的字符串,以及一个包含新文件名(没有路径)的字符串,例如:
NSString *old_filepath = @"/Volumes/blah/myfilewithrubbishname.avi";
NSString *new_filename = @"My Correctly Named File.avi";
Run Code Online (Sandbox Code Playgroud)
我知道NSFileManager的movePath:toPath:handler:方法,但是我无法研究如何构造新文件的路径..
基本上我正在寻找相当于以下Python代码:
>>> import os
>>> old_filepath = "/Volumes/blah/myfilewithrubbishname.avi"
>>> new_filename = "My Correctly Named File.avi"
>>> dirname = os.path.split(old_filepath)[0]
>>> new_filepath = os.path.join(dirname, new_filename)
>>> print new_filepath
/Volumes/blah/My Correctly Named File.avi
>>> os.rename(old_filepath, new_filepath)
Run Code Online (Sandbox Code Playgroud) 我有一个UIWebView,我用来显示几个小PDF.用户从表中选择新闻文章,然后在同一屏幕上的UIWebView中加载文章(PDF).第一次加载总是很好.然后我选择的下一个项目(无论哪一个)崩溃应用程序.
这就是我加载每篇文章的方式:
NSString *filePath = [[NSBundle mainBundle] pathForResource:articleFileName ofType:@"pdf"];
[articleView stopLoading];
[articleView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:filePath]]];
Run Code Online (Sandbox Code Playgroud)
崩溃发生在loadRequest行之后.
崩溃没有提供错误信息.以外:
所有异常{} 0x3629f000
Catchpoint 3(抛出异常).(gdb)
它只是崩溃到main().我已在调试器中验证它在每个请求上使用了正确的文件路径.
我有NSZombies正在运行,我为所有异常设置了断点.
如何删除小数点后的所有字符.
而不是7.3456,我只想7.
这就是我到目前为止用小数位数来获取数字的方法.
[NSString stringWithFormat:@" %f : %f",(audioPlayer.currentTime),(audioPlayer.duration) ];
Run Code Online (Sandbox Code Playgroud)
非常感谢,-Code
我正在开发一个跟踪不同歌曲的控制台应用程序.我正在努力让歌曲课程首先开始,并试图将已经为歌曲持续时间分配的nsnumber记录到nslog语句中:
//
// Song.h
// MusicCollection.15.9
//
// Created by Nicholas Iannone on 1/11/10.
// Copyright 2010 __MyCompanyName__. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface Song : NSObject {
NSString *songTitle;
NSString *songArtist;
NSString *songAlbum;
NSNumber *SongDuration;
}
@property (nonatomic, retain) NSString *songTitle, *songArtist, *songAlbum;
@property (nonatomic, retain) NSNumber *SongDuration;
-(id) init;
-(void) printSong;
@end
//
// Song.m
// MusicCollection.15.9
//
// Created by Nicholas Iannone on 1/11/10.
// Copyright 2010 __MyCompanyName__. All rights reserved.
//
#import "Song.h"
@implementation Song …
Run Code Online (Sandbox Code Playgroud) 我正在使用NSFetchedResultsController
谓词来加载Documents
我的应用程序中的列表.我想加载Documents
除当前活动的所有之外的所有内容.
我使用Rentzsch的MOGenerator创建一个_Document
类,然后我将所有自定义代码放在Document
子类中._Document
生成一个objectID
类型的属性DocumentID
.
在创建控制器的类中,我设置了控制器的currentDocID
属性:
controller.currentDocID = self.document.objectID;
Run Code Online (Sandbox Code Playgroud)
在控制器本身,我懒得加载fetchedResultsController,如下所示:
- (NSFetchedResultsController *)fetchedResultsController {
if (fetchedResultsController != nil) {
return fetchedResultsController;
}
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Document" inManagedObjectContext:managedObjectContext];
[fetchRequest setEntity:entity];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(objectID != %@)", self.currentDocID];
[fetchRequest setPredicate:predicate];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"dateModified" ascending:NO];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
[fetchRequest setSortDescriptors:sortDescriptors];
NSFetchedResultsController …
Run Code Online (Sandbox Code Playgroud) iphone cocoa core-data objective-c nsfetchedresultscontroller
使用uiimagepicker时,是否有任何方法可以指定哪个用户创建的相册应该从中挑选图像?Ill explain.Suppose用户在ipad中创建了两张专辑.让他们被命名为"朋友"和"学生".Is有没有办法指定哪些相册应该从哪些相册进行访问?或者如何知道所选图像所属相册的名称?
可以通过alsset方法完成吗?我想要做的是使用他们的名字访问特定同步相册中的照片.它甚至可能.我的意思是iphone使用自己的命名约定还是保留原始图像名称?
Apple现在要求应用程序开发人员提交针对2.2.1但也针对3.0构建的应用程序.我(我想大多数小型/兼职开发人员)只有一部iPhone,而且由于升级到3.0是不可逆转的,我想了解一下在过渡期间最小化风险的最佳做法是什么.
我知道在两种操作系统上进行完全回归测试没有万无一失的方法,但任何关于如何最大限度地减少回归的想法都会有所帮助.
这是Apple的确切文字:
今年夏天,数以百万计的iPhone和iPod touch客户将转向iPhone OS 3.0.从今天开始,所有提交给App Store的内容都将在最新的iPhone OS 3.0测试版中进行审核.如果您的应用提交与iPhone OS 3.0不兼容,则不会获得批准.
App Store中的现有应用程序应该已经在iPhone OS 3.0上运行而无需修改,但您应该使用iPhone OS 3.0测试现有应用程序,以确保没有兼容性问题.在iPhone OS 3.0可供客户使用后,任何与iPhone OS 3.0不兼容的应用程序都可能会从App Store中删除.
我们的应用会生成一封电子邮件,其中包含带有哈希片段的链接
<a>
标记内)时,URL将被打开,但神秘地排除了哈希片段.以下是我们的Rails应用程序中的相关代码,如果有帮助:
mail(from: @message.from, to: @message.to, cc: @message.cc, bcc: @message.bcc, subject: @message.subject) do |format|
format.html { render text: @message.body_text }
end
Run Code Online (Sandbox Code Playgroud)
电子邮件消息(截断;使用Twitter URL代替我们的应用程序URL,遵循类似的模式):
Subject: Hello
Mime-Version: 1.0
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: 7bit
<html>
<head>
<meta content='text/html; charset=utf-8' http-equiv='content-type'>
<title>title</title>
</head>
<body>
<table id='message_body_template'>
<tr>
<td>
<p><a href="http://twitter.com/#!/cnn" title="" target="">Click here</a>
to learn more.</p>
<p>Plain text link: http://twitter.com/#!/cnn</p>
</td>
</tr>
</table>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
Click here打开Twitter主页,而纯文本"链接"打开CNN的Twitter页面.有谁能解释为什么?
有没有办法使用一个版本的JRE构建我的应用程序,但我的源符合另一个版本?
我想使用1.6在本地调试我的应用程序,因为OS X的1.6比1.4.2好得多,但由于向后兼容性原因,我们实际上使用1.4.2.
我是编程世界的新手(大约一年),并在过去的一年里在Rails,Ruby,JavaScript方面做了一些开发.在这段时间里,我发现它"真的"让我很高兴能够针对具有挑战性的问题进行编程,而现在我"真的"愿意回馈开源社区,感谢我过去一年所拥有的一切.
因此,我正在寻找有趣的开源Ruby项目 - 任何帮助/建议/指针将深表感谢!
为了一个自由和更美好的世界!
我可以安装PyDev for Eclipse,并且没有任何供应商预配置,可以使用相当不错的Python IDE.但令人惊讶的是,我找不到类似于Ruby的独立IDE插件!同样支持PyDev的公司,Aptana,提供了一种名为"RadRails"的东西,但我找不到单独安装它的方法 - 仅作为"Aptana Studio 3 Addin插件",而这个"工作室"不仅包括Ruby - 还包括PyDev ,PHP和许多预配置专注于Web开发.
我错过了什么?为什么我可以安装PyDev并为python安装调试器/完成,但对于Ruby来说,这会导致Eclipse膨胀"Web透视图","Web框架集成"等等?
我正在构建一个带有搜索栏的普通样式表视图,而我在Apple的表视图中无法复制"装订线"的外观(当拖动表格视图时).
联系人截图http://img200.imageshack.us/img200/2633/picture5m.png
如果我设置表格视图的背景颜色,排水沟看起来很好,但我的单元格使用该颜色作为背景颜色.
我已经尝试设置单元格和单元格的contentView的背景颜色tableView:cellForRowAtIndexPath:
,但它稍后会被覆盖.我也尝试创建一个空视图并将其设置为单元格的backgroundView和contentView的子视图,但只有边缘为白色.
我能想到两种解决方案:
这两种解决方案都需要相当多的工作.有没有更简单的方法?
更新:第一个解决方案不起作用.我必须将表格视图的背景颜色设置为clearColor,以便将装订线更改为视图的颜色.但是,当我这样做时,我得到的结果与在表视图上设置backgroundColor相同.
iphone ×6
objective-c ×5
cocoa ×2
cocoa-touch ×2
eclipse ×2
ios ×2
ruby ×2
app-store ×1
contribute ×1
core-data ×1
email ×1
ios4 ×1
ipad ×1
java ×1
nslog ×1
nsnumber ×1
open-source ×1
outlook ×1
outlook-2010 ×1
pdf ×1
swift ×1
uitableview ×1
uiwebview ×1