如何使用%字符文字NSString stringWithFormat?
我想做: [NSString stringWithFormat:@"%%@,%@",string1,string2];
第一个%没出现.
我想知道如何处理我的作业问题.我正在尝试创建一个将用Java编码和解码消息的霍夫曼树.我有字符串和频率.
[a=10, b=15, c=12, e=3, nl=4, sp=13, t=1].
Run Code Online (Sandbox Code Playgroud)
我知道,对于霍夫曼树,你可以选择两个最低的频率,然后将它们变成一棵树,其频率为总和.我知道使用优先级队列我可以将所有频率插入其中并使用该remove()方法取出2个最低频率.然后将它们加在一起以获得它们的重量,然后将该重量插入队列并重复.
最终的树应该保持重量
[58=root, root.left = 33, root.right = 25]
[33.left = 18, 18.left = 8, 8.left = 4]
Run Code Online (Sandbox Code Playgroud)
我不确定如何开始实现一个能够用频率创建树并显示树的霍夫曼树代码.我看看其他代码,似乎他们都是从Streaming Input Code创建的.
让我走的任何帮助都会很棒.提前致谢!
我想用以下格式打印出来:(预订遍历)
58
- 33
- - 18
- - - 8
- - - - 4
- - - - - 1:t
- - - - - 3:e
- - - - 4:nl
- - - 10:a
- - 15:b
- 25
- - 12:c
- - 13:sp
Run Code Online (Sandbox Code Playgroud) 我们的应用程序已被App拒绝,原因是:
2.23
我们发现您的应用不符合iOS数据存储指南,这是根据App Store审核指南所要求的.
特别是,我们发现在启动和/或内容下载时,您的应用程序会存储超过2 MB的数据.要检查应用存储的数据量:
- 安装并启动您的应用
- 转至设置> iCloud>存储和备份>管理存储
- 如有必要,请点按"显示所有应用"
- 检查您应用的存储空间
iOS数据存储指南表明,只有用户使用您的应用创建的内容(例如文档,新文件,编辑等)才能由iCloud备份.
应用程序使用的临时文件只应存储在/ tmp目录中; 请记得在用户退出应用程序时删除存储在此位置的文件.
可以重新创建但必须保持应用程序正常运行的数据 - 或者因为客户希望它可供脱机使用 - 应标记为"不备份"属性.对于NSURL对象,请添加NSURLIsExcludedFromBackupKey属性以防止备份相应的文件.对于CFURLRef对象,请使用相应的kCFURLIsExcludedFromBackupKey属性.
有关详细信息,请参阅技术问答1719:如何防止文件备份到iCloud和iTunes?.
有必要修改您的应用程序以满足iOS数据存储指南的要求.对于离散的代码级问题,您可以咨询Apple Developer技术支持.当DTS工程师跟进您时,请准备好提供:
- 拒绝问题的完整详情
- 截图
- 重现问题的步骤
- 符号化崩溃日志 - 如果您的问题导致崩溃日志
如果您在复制报告的问题时遇到困难,请尝试按照https://developer.apple.com/library/ios/qa/qa1764/技术问答QA1764中的说明测试工作流程 :如何重现只有App Review的崩溃或错误或用户正在看到.
但是,我们没有存储在/ document文件夹中的数据.我们的关键数据存储在Library/Application Support/bundle_id中,此目录设置为"不备份",后面是Apple文档中的示例代码,它将NSURLIsExcludedFromBackupKey属性添加到目录中.
我们下载的缓存文件放在/ tmp目录中,并在使用后删除.因此,实际上没有通过iCloud备份的数据.事实上,我们已按照指示多次检查iCloud存储:
但我们只能找到0.3KB的iCloud使用时间.我刚从iPhone上拍了一个屏幕截图:

它显示确实只使用了0.3KB(屏幕上的第二个应用程序).
任何想法,还有什么会导致这种拒绝?我们有点相信这是苹果评论团队的错误,如果有任何办法我们可以通过电话联系苹果评审团队?
我有这个方法崩溃[NSKeyedArchiver archivedDataWithRootObject:self.data]:
- (void) synchronize
{
@synchronized (self.data)
{
NSData *encryptedData = [[NSKeyedArchiver archivedDataWithRootObject:self.data] NL_AES256EncryptWithKey:userKey]; //La ça crash
BOOL success = [NSKeyedArchiver archiveRootObject:encryptedData toFile:[self filename]];
if (!success)
{
// we lost some data :(
NSLog(@"Failed to synchronize to file %@", [self filename]);
}
}
}
Run Code Online (Sandbox Code Playgroud)
问题是对对象方法(getter/setter)的所有访问都受到保护,@synchronized(self.data)并且此属性是私有的.
任何的想法?
编辑:崩溃日志是明确的:
*** Collection <__NSArrayM: 0x1756a800> was mutated while being enumerated.
0 CoreFoundation 0x2e95becb __exceptionPreprocess + 131
1 libobjc.A.dylib 0x390f2ce7 objc_exception_throw + 39
2 CoreFoundation 0x2e95b9b9 -[NSException name] + …Run Code Online (Sandbox Code Playgroud) 我正在使用核心数据来保存vc1中的类别,并希望将列表属性添加到vc2中的列表中.我的数据模型是许多列表属性的一个类别.
我在vc1中添加了这样的类别:
func createNewCategory() {
var category: NSManagedObject! = NSEntityDescription.insertNewObjectForEntityForName("Category", inManagedObjectContext: self.context) as NSManagedObject
category.setValue(self.categoryTextField.text, forKey: "name")
var error: NSError? = nil
self.context.save(&error)
}
Run Code Online (Sandbox Code Playgroud)
在vc2中设置数据:
func setupCoreData() {
var appDelegate: AppDelegate = (UIApplication.sharedApplication()).delegate as AppDelegate
self.context = appDelegate.managedObjectContext!
var request: NSFetchRequest = NSFetchRequest(entityName: "Category")
if (self.context.executeFetchRequest(request, error: nil)) {
var error: NSError? = nil
self.listData = self.context.executeFetchRequest(request, error: &error)
self.managedObject = self.listData.objectAtIndex(0) as NSManagedObject
}
}
Run Code Online (Sandbox Code Playgroud)
它在最后一行崩溃:self.managedObject = ...说:
CoreData: error: Failed to call designated initializer on NSManagedObject …Run Code Online (Sandbox Code Playgroud) 我EGORefreshTableHeader在UITableView中与静态单元格(在nib中定义)一起使用.
我希望能够向下滚动tableview来触发EGORefreshTableHeader,从而刷新静态单元格中的数据.但是,由于静态单元的大小完全适合窗口,我想防止人们向上滚动.
有没有办法做到这一点?
我正在尝试使用不同的类创建多个阶段,我可以通过单击按钮来启动另一个窗口,但是此窗口应该在不同的类中.
我曾经在Java中这样做,我将在button动作中创建类的对象,并使用对象的名称来设置新的JFrame可见,但是模态到主JFrame.我在JavaFX中尝试过相同但它无法正常工作.
我有两个不同的类,两个都处于不同的阶段,但我不能使用一个阶段来显示其他阶段.我只知道使用一个类,我将在动作处理程序方法中创建另一个阶段,但这会使代码非常长且太复杂.
PS我想要完成的不是同一个窗口中的多个屏幕.但不同的窗口(阶段),我不喜欢使用FXML文件,而是使用netbeans的java文件.
任何帮助将不胜感激.
我AFnetworking从ASIHTTPRequest我的应用程序中切换API以解决连接错误问题。
但是现在我在AFNetworking. 我该如何解决这个问题?
Printing description of error: Error Domain=NSURLErrorDomain Code=-1003 "A server with the
specified hostname could not be found." UserInfo=0x1553bab0
{NSErrorFailingURLStringKey=https://example.com/oauth/token,
NSErrorFailingURLKey=https://example.com/oauth/token, NSLocalizedDescription=A server
with the specified hostname could not be found., NSUnderlyingError=0x1553b2c0 "A server
with the specified hostname could not be found."} (lldb)
Run Code Online (Sandbox Code Playgroud) 我想我错过了一些关于属性属性的东西.首先,我不明白之间的差别retain和assign.
如果我使用assign,属性是否将retain计数器增加1到setter和getter,我是否需要同时使用release它们?
以及如何做这项工作readwrite还是copy?从retain计数的角度来看.
我试图理解我在使用release属性(setter和getter)后需要使用的时间
@property (readwrite,assign) int iVar;
Run Code Online (Sandbox Code Playgroud)
是什么assign在这里做?
有什么区别:
@property (readwrite,assign) int iVar;
Run Code Online (Sandbox Code Playgroud)
和
@property (readwrite,retain) int iVar;
Run Code Online (Sandbox Code Playgroud)
和
@property (readwrite) int iVar;
Run Code Online (Sandbox Code Playgroud)
非常感谢...
我想使用NSTimer如何在程序中初始化定时器产生2秒的延迟?
ios ×5
objective-c ×5
iphone ×2
afnetworking ×1
core-data ×1
data-storage ×1
huffman-code ×1
ios4 ×1
java ×1
javafx ×1
locking ×1
netbeans ×1
nsstring ×1
nstimer ×1
properties ×1
swift ×1
uiscrollview ×1
uitableview ×1
xcode ×1