Skip to content

Commit 4492cd0

Browse files
author
Dylan
committed
Convert to swift version 3.0
1 parent 199a234 commit 4492cd0

File tree

4 files changed

+129
-132
lines changed

4 files changed

+129
-132
lines changed

Demo-Swift/Podfile.lock

Lines changed: 0 additions & 17 deletions
This file was deleted.

Demo-Swift/Swift-Demo.xcodeproj/project.pbxproj

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,11 +122,13 @@
122122
isa = PBXProject;
123123
attributes = {
124124
LastSwiftUpdateCheck = 0730;
125-
LastUpgradeCheck = 0730;
125+
LastUpgradeCheck = 0800;
126126
ORGANIZATIONNAME = ljh;
127127
TargetAttributes = {
128128
366B23091CFD87E3006743C0 = {
129129
CreatedOnToolsVersion = 7.3.1;
130+
DevelopmentTeam = 47X3SWHDZ6;
131+
LastSwiftMigration = 0800;
130132
};
131133
};
132134
};
@@ -204,7 +206,7 @@
204206
);
205207
runOnlyForDeploymentPostprocessing = 0;
206208
shellPath = /bin/sh;
207-
shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n";
209+
shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n";
208210
showEnvVarsInLog = 0;
209211
};
210212
/* End PBXShellScriptBuildPhase section */
@@ -247,8 +249,10 @@
247249
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
248250
CLANG_WARN_EMPTY_BODY = YES;
249251
CLANG_WARN_ENUM_CONVERSION = YES;
252+
CLANG_WARN_INFINITE_RECURSION = YES;
250253
CLANG_WARN_INT_CONVERSION = YES;
251254
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
255+
CLANG_WARN_SUSPICIOUS_MOVE = YES;
252256
CLANG_WARN_UNREACHABLE_CODE = YES;
253257
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
254258
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
@@ -293,8 +297,10 @@
293297
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
294298
CLANG_WARN_EMPTY_BODY = YES;
295299
CLANG_WARN_ENUM_CONVERSION = YES;
300+
CLANG_WARN_INFINITE_RECURSION = YES;
296301
CLANG_WARN_INT_CONVERSION = YES;
297302
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
303+
CLANG_WARN_SUSPICIOUS_MOVE = YES;
298304
CLANG_WARN_UNREACHABLE_CODE = YES;
299305
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
300306
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
@@ -313,6 +319,7 @@
313319
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
314320
MTL_ENABLE_DEBUG_INFO = NO;
315321
SDKROOT = iphoneos;
322+
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
316323
TARGETED_DEVICE_FAMILY = "1,2";
317324
VALIDATE_PRODUCT = YES;
318325
};
@@ -324,13 +331,15 @@
324331
buildSettings = {
325332
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
326333
CLANG_ENABLE_MODULES = YES;
334+
DEVELOPMENT_TEAM = 47X3SWHDZ6;
327335
INFOPLIST_FILE = "Swift-Demo/Info.plist";
328336
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
329337
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
330338
PRODUCT_BUNDLE_IDENTIFIER = "ljh.Swift-Demo";
331339
PRODUCT_NAME = "$(TARGET_NAME)";
332340
SWIFT_OBJC_BRIDGING_HEADER = "Swift-Demo/Swift-Demo-Bridging-Header.h";
333341
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
342+
SWIFT_VERSION = 3.0;
334343
};
335344
name = Debug;
336345
};
@@ -340,12 +349,14 @@
340349
buildSettings = {
341350
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
342351
CLANG_ENABLE_MODULES = YES;
352+
DEVELOPMENT_TEAM = 47X3SWHDZ6;
343353
INFOPLIST_FILE = "Swift-Demo/Info.plist";
344354
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
345355
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
346356
PRODUCT_BUNDLE_IDENTIFIER = "ljh.Swift-Demo";
347357
PRODUCT_NAME = "$(TARGET_NAME)";
348358
SWIFT_OBJC_BRIDGING_HEADER = "Swift-Demo/Swift-Demo-Bridging-Header.h";
359+
SWIFT_VERSION = 3.0;
349360
};
350361
name = Release;
351362
};

Demo-Swift/Swift-Demo/AppDelegate.swift

Lines changed: 102 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -11,111 +11,114 @@ import LKDBHelper
1111

1212
@UIApplicationMain
1313
class AppDelegate: UIResponder, UIApplicationDelegate, UITextViewDelegate {
14-
15-
var window: UIWindow?
16-
var ms:String = ""
17-
var tv:UITextView? = nil
18-
19-
func scrollViewDidScroll(scrollView: UIScrollView) {
20-
self.window?.endEditing(true);
14+
15+
var window: UIWindow?
16+
var ms: String = ""
17+
var tv: UITextView? = nil
18+
19+
func scrollViewDidScroll(_ scrollView: UIScrollView) {
20+
self.window?.endEditing(true);
21+
}
22+
23+
func add(_ txt: String) -> Void {
24+
DispatchQueue.main.async {
25+
self.ms += "\n"
26+
self.ms += txt
27+
self.ms += "\n"
28+
self.tv?.text = self.ms
2129
}
30+
}
31+
32+
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey : Any]? = nil) -> Bool {
33+
self.window = UIWindow.init(frame: UIScreen.main.bounds);
34+
self.window?.rootViewController = UIViewController.init();
35+
36+
var frame = self.window?.bounds;
37+
frame?.origin.y = 20
38+
self.tv = UITextView.init(frame: frame!)
39+
self.tv?.textColor = UIColor.black
40+
self.tv?.delegate = self
41+
self.window?.rootViewController?.view.addSubview(self.tv!);
42+
self.window?.makeKeyAndVisible()
2243

23-
func add(txt:String) -> Void {
24-
dispatch_async(dispatch_get_main_queue()) {
25-
self.ms += "\n"
26-
self.ms += txt
27-
self.ms += "\n"
28-
self.tv?.text = self.ms
29-
}
44+
DispatchQueue(label: "queue.lkdb").async {
45+
self.test()
3046
}
47+
return true
48+
}
49+
50+
func test() {
51+
self.add("示例 开始 example start \n\n")
52+
let globalHelper = LKTest.getUsingLKDBHelper()!
53+
54+
///删除所有表 delete all table
55+
globalHelper.dropAllTable()
56+
57+
//清空表数据 clear table data
58+
LKDBHelper.clearTableData(LKTest.self)
59+
60+
//初始化数据模型 init object
61+
let test = LKTest.init();
62+
63+
test.name = "zhan san"
64+
test.age = 16
65+
test.url = URL(string: "http://zzzz");
66+
67+
//外键 foreign key
68+
let foreign = LKTestForeign.init()
69+
foreign.address = ":asdasdasdsadasdsdas"
70+
foreign.postcode = 123341
71+
foreign.addid = 213214
72+
73+
test.address = foreign
3174

32-
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
33-
34-
self.window = UIWindow.init(frame: UIScreen.mainScreen().bounds);
35-
self.window?.rootViewController = UIViewController.init();
36-
37-
var frame = self.window?.bounds;
38-
frame?.origin.y = 20
39-
self.tv = UITextView.init(frame: frame!)
40-
self.tv?.textColor = UIColor.blackColor()
41-
self.tv?.delegate = self
42-
self.window?.rootViewController?.view.addSubview(self.tv!);
43-
self.window?.makeKeyAndVisible()
44-
45-
dispatch_async(dispatch_get_global_queue(0, 0)) {
46-
self.test()
47-
}
75+
test.blah = ["0",[1],["2":2],foreign]
76+
test.hoho = ["array":test.blah!,"foreign":foreign,"normal":123456,"date":NSDate()]
77+
78+
test.isGirl = true
79+
80+
test.like = 56
81+
test.img = UIImage.init(named: "Snip20130620_6.png")
82+
test.color = UIColor.orange
83+
//同步 插入第一条 数据 synchronous insert the first
84+
test.saveToDB()
85+
86+
//更改主键继续插入 Insert the change after the primary key
87+
test.name = "li si"
88+
test.saveToDB()
89+
90+
//事物 transaction
91+
globalHelper.execute { (_helper) -> Bool in
92+
93+
guard let helper = _helper else {
94+
return false
95+
}
96+
test.name = "1"
97+
var insertSucceed = helper.insert(toDB: test);
98+
99+
test.name = "2"
100+
insertSucceed = helper.insert(toDB: test);
101+
102+
test.name = "1"
103+
test.rowid = 0
104+
insertSucceed = helper.insert(toDB: test);
105+
106+
if insertSucceed == false {
107+
return false
108+
}
109+
else {
48110
return true
111+
}
49112
}
50-
func test() {
51-
self.add("示例 开始 example start \n\n")
52-
let globalHelper = LKTest.getUsingLKDBHelper()
53-
54-
///删除所有表 delete all table
55-
globalHelper.dropAllTable()
56-
57-
//清空表数据 clear table data
58-
LKDBHelper.clearTableData(LKTest)
59-
60-
//初始化数据模型 init object
61-
var test = LKTest.init();
62-
63-
test.name = "zhan san"
64-
test.age = 16
65-
test.url = NSURL(string: "http://zzzz");
66-
67-
//外键 foreign key
68-
var foreign = LKTestForeign.init()
69-
foreign.address = ":asdasdasdsadasdsdas"
70-
foreign.postcode = 123341
71-
foreign.addid = 213214
72-
73-
test.address = foreign
74-
75-
test.blah = ["0",[1],["2":2],foreign]
76-
test.hoho = ["array":test.blah!,"foreign":foreign,"normal":123456,"date":NSDate()]
77-
78-
test.isGirl = true
79-
80-
test.like = 56
81-
test.img = UIImage.init(named: "Snip20130620_6.png")
82-
test.color = UIColor.orangeColor()
83-
//同步 插入第一条 数据 synchronous insert the first
84-
test.saveToDB()
85-
86-
//更改主键继续插入 Insert the change after the primary key
87-
test.name = "li si"
88-
test.saveToDB()
89-
90-
//事物 transaction
91-
globalHelper.executeForTransaction { (_helper) -> Bool in
92-
93-
test.name = "1"
94-
var insertSucceed = _helper.insertToDB(test);
95-
96-
test.name = "2"
97-
insertSucceed = _helper.insertToDB(test);
98-
99-
test.name = "1"
100-
test.rowid = 0
101-
insertSucceed = _helper.insertToDB(test);
102-
103-
if insertSucceed == false {
104-
return false
105-
}
106-
else {
107-
return true
108-
}
109-
}
110-
111-
self.add("同步插入 完成! Insert completed synchronization")
112-
113-
sleep(1);
114-
115-
let searchResultArray = LKTest.searchWithWhere(nil, orderBy: nil, offset: 0, count: 0);
116-
for obj in searchResultArray {
117-
self.add(obj.printAllPropertys())
118-
}
113+
114+
self.add("同步插入 完成! Insert completed synchronization")
115+
116+
sleep(1);
117+
118+
let searchResultArray = LKTest.search(withWhere: nil, orderBy: nil, offset: 0, count: 0);
119+
for obj in searchResultArray! {
120+
self.add((obj as AnyObject).printAllPropertys())
119121
}
122+
}
120123
}
121124

Demo-Swift/Swift-Demo/LKTestModels.swift

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -20,25 +20,25 @@ class LKTestForeign: LKTestForeignSuper {
2020
}
2121

2222
class LKTest: NSObject {
23-
var address:LKTestForeign?
24-
var name:NSString?
25-
var url:NSURL?
26-
var age:Int = 0
27-
var isGirl:Bool = false
23+
var address: LKTestForeign?
24+
var name: String?
25+
var url: URL?
26+
var age: Int = 0
27+
var isGirl: Bool = false
2828
var blah: NSArray?
29-
var hoho:NSDictionary?
30-
var like:u_char = 0
31-
var img:UIImage?
32-
var color:UIColor?
33-
var frame:CGRect = CGRectZero
34-
var size:CGSize = CGSizeZero
35-
var range:NSRange = NSMakeRange(0, 0)
36-
var point:CGPoint = CGPointZero
29+
var hoho: NSDictionary?
30+
var like: u_char = 0
31+
var img: UIImage?
32+
var color: UIColor?
33+
var frame: CGRect = CGRect.zero
34+
var size: CGSize = CGSize.zero
35+
var range: NSRange = NSMakeRange(0, 0)
36+
var point: CGPoint = CGPoint.zero
3737

3838
override static func getPrimaryKey() -> String {
3939
return "name"
4040
}
4141
override static func getTableName() -> String {
4242
return "LKTestTable"
4343
}
44-
}
44+
}

0 commit comments

Comments
 (0)