小编bog*_*gen的帖子

如何在Swift中正确转换为子类?

我有一个UITableView有很多不同的单元格,基于数据源的内容数组中的什么,它们应该显示自定义内容.

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        var cell : UITableViewCell? = nil
        let objectAtIndexPath: AnyObject = contentArray![indexPath.row]

        if let questionText = objectAtIndexPath as? String {
            cell = tableView.dequeueReusableCellWithIdentifier("questionCell", forIndexPath: indexPath) as QuestionTableViewCell
            cell.customLabel.text = "test"
        }

        return cell!
    }
Run Code Online (Sandbox Code Playgroud)

在这里我得到了错误

UITableViewCell does not have the attribute customLabel

QuestionTableViewCell确实有.我的演员QuestionTableViewCell怎么了?

uitableview ios swift

7
推荐指数
1
解决办法
7095
查看次数

尝试从磁盘访问缓存请求时NSURLCache返回nil

我正在尝试使用iOS 5中内置的基于磁盘的url cacing.我有一个json feed,我想加载然后缓存,所以它会在下次用户使用应用程序时立即加载.cache.db文件已成功创建,如果我在sqlite-editor中打开它,我可以获取数据.

我正在使用AFNetworking

NSURL *url = [NSURL URLWithString:@"http://myurl.com/json"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];

NSLog(@"%d before call",[[NSURLCache sharedURLCache] currentDiskUsage]);  // logs 0 bytes
AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) {
// is successfully loading JSON and reading it to a table view in a view
}failure:nil];

NSCachedURLResponse *cachedResponse = [[NSURLCache sharedURLCache] cachedResponseForRequest:request] 
// this returns nil, and can't load the request from disk.
Run Code Online (Sandbox Code Playgroud)

在缓存响应块中,奇怪的是缓存现在正在工作,并成功从内存中获取缓存请求.

[operation setCacheResponseBlock:^NSCachedURLResponse *(NSURLConnection *connection, NSCachedURLResponse *cachedResponse) {
        NSCachedURLResponse *cachedResponse_ = …
Run Code Online (Sandbox Code Playgroud)

iphone xcode caching ios5 afnetworking

6
推荐指数
1
解决办法
3769
查看次数

为什么 Core Data 在 SQLite 中使用 Z 前缀命名它创建的表和属性?

只是想知道为什么当我使用 SQLite 数据库浏览器浏览所有表和实体时,它们的名称前面都会显示 Z 前缀。我的数据库中的实体在代码中名为Assignment,当我浏览它时,它的名称为ZASSIGNMENT。

sqlite iphone cocoa-touch core-data ios

6
推荐指数
1
解决办法
1139
查看次数

如何从代码而不是文件渲染django模板

我正在编写一个Google App Engine webapp,它将一些HTML呈现给Django模板.我想要使​​用文件或只是一些非常类似于文件的json来渲染模板.是否可以使用Django将其呈现为读入并存储在数据库中的文件?旧的API.HTML只是api.html的旧版本,但有一些小的改动.将Django渲染到api-html文件可以正常工作.

我知道你不能在GAE上存储文件,我怎样才能动态地使用Django渲染到存储在内存中的HTML?

path = ""
oldAPI = APIVersion().get_by_key_name(version)
if oldAPI is None:
    path = os.path.join(os.path.dirname(__file__), "api.html")
template_values = {
            'responseDict': responseDict,
            }
        if path:
            self.response.out.write(template.render(path, template_values))
        else:
            self.response.out.write(template.render(oldAPI.html,template_values))
Run Code Online (Sandbox Code Playgroud)

python django google-app-engine django-templates webapp2

6
推荐指数
1
解决办法
1413
查看次数

在iOS上使用Apple托管内容和应用内购买时,是否可以在购买之前下载内容?

我正在开发一个应用程序,该应用程序将使用带有Apple托管内容的IAP.我想在购买之前向正在下载的人展示内容的图像.应用程序是否可以在用户购买之前从Apples服务器下载内容?这样我就可以从该包中加载图像并显示它们.当用户购买时,应用程序会显示包中的其余内容.

iphone in-app-purchase ios ios6 iap-hosted-content

6
推荐指数
1
解决办法
1382
查看次数

使超类的初始化器返回特定的子类?

我正在Swift中创建一个单元框架,它有不同单位的测量超类和子类,如Mass和Volume.一个功能是允许框架正确猜测它创建的单元并返回正确的类.示例代码:

class Measurement {
   var unitString : String
   init(unknownUnit: String) {
       // checks if the unit is either Volume or Mass, and returns an instance of that class
   }
}

class Volume : Measurement {
    init(unitString: String) {

    }
}

class Mass : Measurement {
    init(unitString: String) {

    }
}

let mass = Mass("kg")                   // class: Mass
let volume = Volume("ml")               // class: Volume
let shouldBeVolume = Measurement("ml")  // class: Volume
let shouldBeMass = Measurement("kg")    // class: Mass
Run Code Online (Sandbox Code Playgroud)

是否有可能让一个继承的类在初始化时创建特定子类的对象?

图书馆被命名为 …

subclass swift

6
推荐指数
1
解决办法
1578
查看次数

如何为 WKWebView 设置自定义 inputviewcontroller/inputView?

编辑 WKWebView 时是否有任何自定义 inputView 的方法?它没有像 UITextView 那样设置 inputView,但另一种方法可能是为整个应用程序加载自定义 inputViewController(自定义键盘)。我还没有找到强制在应用程序中的特定时间/地点使用 inputViewController 的方法。有没有办法做到这一点?

inputview wkwebview uiinputviewcontroller

6
推荐指数
0
解决办法
502
查看次数

无法在导入另一个框架的XCode项目中运行测试

我正在尝试编写一个开源应用程序来展示如何在Swift中编写客户端+服务器代码.源代码位于:https://github.com/haaakon/QuizWorld(简称QW)

该应用程序使用的框架位于:https://github.com/haaakon/QuizWorld-API(QWAPI)以访问API.我已将QWAAPI作为项目导入到QW应用程序中,它在模拟器中运行良好,但在运行测试时,由于此错误,它无法编译:

Undefined symbols for architecture x86_64:
"QuizWorld.QuestionViewModel.__allocating_init () -> QuizWorld.QuestionViewModel", referenced from
Run Code Online (Sandbox Code Playgroud)

这只是测试中的一行代码:

let a = QuestionViewModel()
Run Code Online (Sandbox Code Playgroud)

这意味着测试目标无法正确获取导入的模块.导入为:

@testable import QuizWorld
@testable import QuizWorldAPI

import Prelude
import ReactiveSwift
import ReactiveExtensions
import Result
Run Code Online (Sandbox Code Playgroud)

我已经尝试添加很多不同的导入,即使对于API框架中使用的框架,但似乎没有什么能解决这个问题.QW-Tests目标还具有正确的目标依赖关系设置.任何人都有一个线索,我可以在这附近吗?所有代码都是链接到的repos中的开源代码.

xcode frameworks ios

6
推荐指数
1
解决办法
1264
查看次数

如何从嵌入工作空间的Swift Playground加载.sks文件?

在fileNamed的文档中:从.sks文件加载场景时说:

The name of the file, without a file extension.
The file must be in the app’s main bundle and have a .sks filename extension.
Run Code Online (Sandbox Code Playgroud)

我在游乐场的用法:

if let scene = PlanetsScene(fileNamed: "PlanetsScene") 
Run Code Online (Sandbox Code Playgroud)

这有什么解决方法吗?在Playground中运行的东西似乎无法访问应用程序主包.我已将Playground嵌入到项目工作区中,并且可以访问我公开设置的所有其他类,但不能只是加载.sks文件.

xcode ios sprite-kit swift-playground

6
推荐指数
1
解决办法
464
查看次数

具有分组的核心数据NSFetchRequest

我有一个获取请求,该请求可以产生一个包含结果中两个部分的tableview.

我的模特:

@interface Player : NSManagedObject

@property (nonatomic, retain) NSString * name;
@property (nonatomic, retain) NSNumber * isFacebookFriend;
Run Code Online (Sandbox Code Playgroud)

此模型上的获取请求应该生成一个部分,其中一个部分中的isFacebookFriend == YES,而第二部分中的isFacebookFriend == NO.

我试过了

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
HBAppDelegate *appDelegate = [UIApplication sharedApplication].delegate;
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Player" inManagedObjectContext:appDelegate.managedObjectContext];
[fetchRequest setEntity:entity];
NSSortDescriptor *nameDescriptor = [[NSSortDescriptor alloc] initWithKey:@"name" ascending:NO];
[fetchRequest setSortDescriptors:@[nameDescriptor]];
[fetchRequest setResultType:NSDictionaryResultType];
[fetchRequest setPropertiesToGroupBy:@[@"isFacebookFriend"]];
_fetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:appDelegate.managedObjectContext sectionNameKeyPath:nil cacheName:@"playerCache"];
NSError *error;
[_fetchedResultsController performFetch:&error];
Run Code Online (Sandbox Code Playgroud)

但那没有做到.错误是:

2013-06-12 12:27:28.364 TwentyQuestions[25015:c07] Unbalanced calls to begin/end appearance transitions for <UINavigationController: …
Run Code Online (Sandbox Code Playgroud)

core-data nsfetchrequest ios

5
推荐指数
1
解决办法
4281
查看次数