Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
R
rire-tool
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
逄仁秀
rire-tool
Commits
414496fd
提交
414496fd
authored
12月 15, 2023
作者:
逄仁秀
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
no message
上级
d1b2fe94
隐藏空白字符变更
内嵌
并排
正在显示
11 个修改的文件
包含
179 行增加
和
37 行删除
+179
-37
project.pbxproj
iOS-2kj.xcodeproj/project.pbxproj
+4
-4
UserInterfaceState.xcuserstate
...ata/renxiupang.xcuserdatad/UserInterfaceState.xcuserstate
+0
-0
Breakpoints_v2.xcbkptlist
...nxiupang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
+46
-16
KJHomeViewController.swift
iOS-2kj/home/KJHomeViewController.swift
+6
-0
KJConfigParamModel.swift
iOS-2kj/home/model/KJConfigParamModel.swift
+35
-0
KJRechargeParamModel.swift
iOS-2kj/home/model/KJRechargeParamModel.swift
+0
-14
KJElectricityViewController.swift
iOS-2kj/home/subC/KJElectricityViewController.swift
+49
-1
KJHomeHeaderCell.swift
iOS-2kj/home/view/KJHomeHeaderCell.swift
+2
-0
KJHomeHeaderCell.xib
iOS-2kj/home/view/KJHomeHeaderCell.xib
+23
-0
KJLoginPhoneViewController.swift
iOS-2kj/login/KJLoginPhoneViewController.swift
+11
-1
KJLoginPhoneViewController.xib
iOS-2kj/login/KJLoginPhoneViewController.xib
+3
-1
没有找到文件。
iOS-2kj.xcodeproj/project.pbxproj
浏览文件 @
414496fd
...
...
@@ -10,7 +10,7 @@
880FF38E2B21A6C600872B34
/* KJAccountModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
880FF38D2B21A6C600872B34
/* KJAccountModel.swift */
;
};
880FF3912B22C39D00872B34
/* KJZFCodeViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
880FF38F2B22C39D00872B34
/* KJZFCodeViewController.swift */
;
};
880FF3922B22C39D00872B34
/* KJZFCodeViewController.xib in Resources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
880FF3902B22C39D00872B34
/* KJZFCodeViewController.xib */
;
};
88276FAD2B284AB0009BAE13
/* KJ
RechargeParamModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
88276FAC2B284AB0009BAE13
/* KJRecharge
ParamModel.swift */
;
};
88276FAD2B284AB0009BAE13
/* KJ
ConfigParamModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
88276FAC2B284AB0009BAE13
/* KJConfig
ParamModel.swift */
;
};
883B01E42AC16CFC00C3ABBF
/* AppDelegate.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
883B01E32AC16CFC00C3ABBF
/* AppDelegate.swift */
;
};
883B01E82AC16CFC00C3ABBF
/* ViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
883B01E72AC16CFC00C3ABBF
/* ViewController.swift */
;
};
883B01EB2AC16CFC00C3ABBF
/* Main.storyboard in Resources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
883B01E92AC16CFC00C3ABBF
/* Main.storyboard */
;
};
...
...
@@ -83,7 +83,7 @@
880FF38D2B21A6C600872B34
/* KJAccountModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
KJAccountModel.swift
;
sourceTree
=
"<group>"
;
};
880FF38F2B22C39D00872B34
/* KJZFCodeViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
KJZFCodeViewController.swift
;
sourceTree
=
"<group>"
;
};
880FF3902B22C39D00872B34
/* KJZFCodeViewController.xib */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
file.xib
;
path
=
KJZFCodeViewController.xib
;
sourceTree
=
"<group>"
;
};
88276FAC2B284AB0009BAE13
/* KJ
RechargeParamModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
KJRecharge
ParamModel.swift
;
sourceTree
=
"<group>"
;
};
88276FAC2B284AB0009BAE13
/* KJ
ConfigParamModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
KJConfig
ParamModel.swift
;
sourceTree
=
"<group>"
;
};
883B01E02AC16CFC00C3ABBF
/* iOS-2kj.app */
=
{
isa
=
PBXFileReference
;
explicitFileType
=
wrapper.application
;
includeInIndex
=
0
;
path
=
"iOS-2kj.app"
;
sourceTree
=
BUILT_PRODUCTS_DIR
;
};
883B01E32AC16CFC00C3ABBF
/* AppDelegate.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
AppDelegate.swift
;
sourceTree
=
"<group>"
;
};
883B01E72AC16CFC00C3ABBF
/* ViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
ViewController.swift
;
sourceTree
=
"<group>"
;
};
...
...
@@ -185,7 +185,7 @@
isa
=
PBXGroup
;
children
=
(
880FF38D2B21A6C600872B34
/* KJAccountModel.swift */
,
88276FAC2B284AB0009BAE13
/* KJ
Recharge
ParamModel.swift */
,
88276FAC2B284AB0009BAE13
/* KJ
Config
ParamModel.swift */
,
);
path
=
model
;
sourceTree
=
"<group>"
;
...
...
@@ -582,7 +582,7 @@
88BE38132B0C84CE00D04877
/* KJNoPayCodeViewController.swift in Sources */
,
88BE37F62AFCC27200D04877
/* KJEmoneyViewController.swift in Sources */
,
88BE37DE2AFCC19F00D04877
/* KJChargeViewController.swift in Sources */
,
88276FAD2B284AB0009BAE13
/* KJ
Recharge
ParamModel.swift in Sources */
,
88276FAD2B284AB0009BAE13
/* KJ
Config
ParamModel.swift in Sources */
,
883B01E82AC16CFC00C3ABBF
/* ViewController.swift in Sources */
,
88BE37FF2AFCCCB500D04877
/* KJDeviceInfo.swift in Sources */
,
883B01E42AC16CFC00C3ABBF
/* AppDelegate.swift in Sources */
,
...
...
iOS-2kj.xcworkspace/xcuserdata/renxiupang.xcuserdatad/UserInterfaceState.xcuserstate
浏览文件 @
414496fd
No preview for this file type
iOS-2kj.xcworkspace/xcuserdata/renxiupang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
浏览文件 @
414496fd
...
...
@@ -4,22 +4,6 @@
type =
"0"
version =
"2.0"
>
<Breakpoints>
<BreakpointProxy
BreakpointExtensionID =
"Xcode.Breakpoint.FileBreakpoint"
>
<BreakpointContent
uuid =
"FC1DA8F6-67DA-4640-9DF6-892588A807C5"
shouldBeEnabled =
"Yes"
ignoreCount =
"0"
continueAfterRunningActions =
"No"
filePath =
"iOS-2kj/home/subC/KJChargeViewController.swift"
startingColumnNumber =
"9223372036854775807"
endingColumnNumber =
"9223372036854775807"
startingLineNumber =
"46"
endingLineNumber =
"46"
landmarkName =
"obtainData()"
landmarkType =
"7"
>
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID =
"Xcode.Breakpoint.FileBreakpoint"
>
<BreakpointContent
...
...
@@ -65,8 +49,54 @@
endingLineNumber =
"72"
offsetFromSymbolStart =
"36"
>
</Location>
<Location
uuid =
"A3F2D383-8D8C-4BF2-A40E-79CD7585E802 - 93c36718f4600576"
shouldBeEnabled =
"Yes"
ignoreCount =
"0"
continueAfterRunningActions =
"No"
symbolName =
"closure #1 @Sendable (Swift.Optional<Foundation.Data>, Swift.Optional<__C.NSURLResponse>, Swift.Optional<Swift.Error>) -> () in iOS_2kj.KJZFCodeViewController.sureAction(Any) -> ()"
moduleName =
"iOS-2kj"
usesParentBreakpointCondition =
"Yes"
urlString =
"file:///Users/renxiupang/Documents/rire-tool/iOS-2kj/home/subC/KJZFCodeViewController.swift"
startingColumnNumber =
"9223372036854775807"
endingColumnNumber =
"9223372036854775807"
startingLineNumber =
"71"
endingLineNumber =
"71"
offsetFromSymbolStart =
"1848"
>
</Location>
<Location
uuid =
"A3F2D383-8D8C-4BF2-A40E-79CD7585E802 - 3fdeed6896bd20e0"
shouldBeEnabled =
"Yes"
ignoreCount =
"0"
continueAfterRunningActions =
"No"
symbolName =
"closure #1 @Swift.MainActor () -> () in closure #1 @Sendable (Swift.Optional<Foundation.Data>, Swift.Optional<__C.NSURLResponse>, Swift.Optional<Swift.Error>) -> () in iOS_2kj.KJZFCodeViewController.sureAction(Any) -> ()"
moduleName =
"iOS-2kj"
usesParentBreakpointCondition =
"Yes"
urlString =
"file:///Users/renxiupang/Documents/rire-tool/iOS-2kj/home/subC/KJZFCodeViewController.swift"
startingColumnNumber =
"9223372036854775807"
endingColumnNumber =
"9223372036854775807"
startingLineNumber =
"72"
endingLineNumber =
"72"
offsetFromSymbolStart =
"36"
>
</Location>
</Locations>
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID =
"Xcode.Breakpoint.FileBreakpoint"
>
<BreakpointContent
uuid =
"9DE4A382-1AF3-431B-AB5B-1CE72F6EC327"
shouldBeEnabled =
"Yes"
ignoreCount =
"0"
continueAfterRunningActions =
"No"
filePath =
"iOS-2kj/home/subC/KJElectricityViewController.swift"
startingColumnNumber =
"9223372036854775807"
endingColumnNumber =
"9223372036854775807"
startingLineNumber =
"42"
endingLineNumber =
"42"
landmarkName =
"obtainData()"
landmarkType =
"7"
>
</BreakpointContent>
</BreakpointProxy>
</Breakpoints>
</Bucket>
iOS-2kj/home/KJHomeViewController.swift
浏览文件 @
414496fd
...
...
@@ -31,6 +31,11 @@ class KJHomeViewController: KJBaseViewController {
let
vc
=
KJAccountViewController
()
navigationController
?
.
pushViewController
(
vc
,
animated
:
true
)
}
@objc
func
userAction
()
{
let
vc
=
KJLoginPhoneViewController
()
navigationController
?
.
pushViewController
(
vc
,
animated
:
true
)
}
/*
// MARK: - Navigation
...
...
@@ -60,6 +65,7 @@ extension KJHomeViewController: UICollectionViewDelegate, UICollectionViewDataSo
if
indexPath
.
section
==
0
{
let
cell
=
collectionView
.
dequeueReusableCell
(
withReuseIdentifier
:
"KJHomeHeaderCell"
,
for
:
indexPath
)
as!
KJHomeHeaderCell
cell
.
accountBtn
.
addTarget
(
self
,
action
:
#selector(
accountAction
)
,
for
:
.
touchUpInside
)
cell
.
userBtn
.
addTarget
(
self
,
action
:
#selector(
userAction
)
,
for
:
.
touchUpInside
)
return
cell
}
let
cell
=
collectionView
.
dequeueReusableCell
(
withReuseIdentifier
:
"KJHomeCollectionViewCell"
,
for
:
indexPath
)
as!
KJHomeCollectionViewCell
...
...
iOS-2kj/home/model/KJConfigParamModel.swift
0 → 100644
浏览文件 @
414496fd
//
// KJRechargeParamModel.swift
// iOS-2kj
//
// Created by 仁秀逄 on 2023/12/12.
//
import
UIKit
import
HandyJSON
class
KJGetConvModel
:
HandyJSON
{
required
init
()
{}
}
class
KJConfigParamModel
:
HandyJSON
{
var
name
:
String
?
var
desc
:
String
?
var
type
:
String
?
var
verify
:
String
?
var
data
:
[
KJConfigDataParamModel
]?
var
url
:
String
?
//下拉框数据,需要请求接口
var
param
:
[
String
:
String
]?
//请求接口传参数
required
init
()
{}
}
class
KJConfigDataParamModel
:
HandyJSON
{
var
code
:
String
?
var
name
:
String
?
var
amount
:
String
?
var
basic_fee
:
String
?
var
per_fee
:
String
?
required
init
()
{}
}
iOS-2kj/home/model/KJRechargeParamModel.swift
deleted
100644 → 0
浏览文件 @
d1b2fe94
//
// KJRechargeParamModel.swift
// iOS-2kj
//
// Created by 仁秀逄 on 2023/12/12.
//
import
UIKit
import
HandyJSON
class
KJRechargeParamModel
:
HandyJSON
{
required
init
()
{}
}
iOS-2kj/home/subC/KJElectricityViewController.swift
浏览文件 @
414496fd
...
...
@@ -12,13 +12,61 @@ class KJElectricityViewController: KJBaseViewController {
@IBOutlet
weak
var
channelTF
:
UITextField
!
@IBOutlet
weak
var
idTF
:
UITextField
!
@IBOutlet
weak
var
electricityBtn
:
UIButton
!
func
obtainData
()
{
// 构建URL
let
url
:
URL
=
URL
(
string
:
"https://www.danamudah.fun/kopisusu_server/convenience/get_conv_param"
)
!
// 发送HTTP请求的的session对象
let
session
=
URLSession
.
shared
// 构建请求request
var
request
=
URLRequest
(
url
:
url
)
request
.
httpMethod
=
"POST"
request
.
setValue
(
"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiIsInZlcnNpb24iOjF9.eyJwaG9uZSI6Im5HU2NtR21abW1hWFkyVm8iLCJpZCI6IjMxOSIsImV4cCI6MTcxNDYzNjk1MSwiZXh0Ijp7InNlc3Npb25faWQiOjQ3NzAyfSwiaXNzIjoiaW5kb25lc2lhIiwiaWF0IjoxNzAxNjc2OTUxfQ.xzikFbX-fP47D1AF51FEKdM9dm4dPU6CFlTFQkQV3XU"
,
forHTTPHeaderField
:
"Token"
)
var
param
=
[
"method"
:
"electric"
]
var
jsonData
=
NSData
()
do
{
jsonData
=
try
JSONSerialization
.
data
(
withJSONObject
:
param
,
options
:
.
prettyPrinted
)
as
NSData
}
catch
{
print
(
error
.
localizedDescription
)
}
request
.
httpBody
=
jsonData
as
Data
// 发一个post请求
let
task
=
session
.
dataTask
(
with
:
request
as
URLRequest
)
{(
data
,
response
,
error
)
in
guard
let
data
=
data
,
let
_
:
URLResponse
=
response
,
error
==
nil
else
{
print
(
"Request Erroor"
)
return
}
let
dataString
=
String
(
data
:
data
,
encoding
:
String
.
Encoding
.
utf8
)
let
dict
=
self
.
getDictionaryFromJSONString
(
jsonString
:
dataString
!
)
print
(
dict
)
}
task
.
resume
()
}
func
getDictionaryFromJSONString
(
jsonString
:
String
)
->
NSDictionary
{
// 将传入的 JSON 字符串 jsonString 使用 data(using:) 方法转换为 Data 类型
let
jsonData
:
Data
=
jsonString
.
data
(
using
:
.
utf8
)
!
// 通过 JSONSerialization.jsonObject(with:options:) 方法将 jsonData 进行 JSON 解析,并将解析结果存储在 dict 变量中。这里使用的选项是 .mutableContainers,表示可以修改容器对象
let
dict
=
try
?
JSONSerialization
.
jsonObject
(
with
:
jsonData
,
options
:
.
mutableContainers
)
// 使用条件语句判断 dict 是否为 nil。如果不为 nil,表示 JSON 解析成功,将 dict 强制转换为 NSDictionary 类型,并返回。
// 如果 dict 为 nil,表示 JSON 解析失败,返回一个空的 NSDictionary 对象。
if
dict
!=
nil
{
return
dict
as!
NSDictionary
}
return
NSDictionary
()
}
override
func
viewDidLoad
()
{
super
.
viewDidLoad
()
obtainData
()
// Do any additional setup after loading the view.
navBack
.
isHidden
=
true
statusView
.
isHidden
=
true
}
/*
...
...
iOS-2kj/home/view/KJHomeHeaderCell.swift
浏览文件 @
414496fd
...
...
@@ -13,6 +13,8 @@ class KJHomeHeaderCell: UICollectionViewCell {
@IBOutlet
weak
var
qrcodeBtn
:
UIButton
!
@IBOutlet
weak
var
cardManagerBtn
:
UIButton
!
@IBOutlet
weak
var
userBtn
:
UIButton
!
override
func
awakeFromNib
()
{
super
.
awakeFromNib
()
// Initialization code
...
...
iOS-2kj/home/view/KJHomeHeaderCell.xib
浏览文件 @
414496fd
...
...
@@ -27,6 +27,11 @@
<constraint
firstAttribute=
"height"
constant=
"45"
id=
"QrS-5g-cvC"
/>
<constraint
firstAttribute=
"width"
constant=
"45"
id=
"XRP-z7-n35"
/>
</constraints>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute
type=
"number"
keyPath=
"layer.cornerRadius"
>
<real
key=
"value"
value=
"22.5"
/>
</userDefinedRuntimeAttribute>
</userDefinedRuntimeAttributes>
</imageView>
<imageView
clipsSubviews=
"YES"
userInteractionEnabled=
"NO"
contentMode=
"scaleAspectFit"
horizontalHuggingPriority=
"251"
verticalHuggingPriority=
"251"
image=
"home_account"
translatesAutoresizingMaskIntoConstraints=
"NO"
id=
"N8W-Jk-3QN"
>
<rect
key=
"frame"
x=
"37.666666666666664"
y=
"133"
width=
"43.999999999999993"
height=
"44"
/>
...
...
@@ -91,12 +96,25 @@
<state
key=
"normal"
title=
"Button"
/>
<buttonConfiguration
key=
"configuration"
style=
"plain"
title=
" "
/>
</button>
<label
opaque=
"NO"
userInteractionEnabled=
"NO"
contentMode=
"left"
horizontalHuggingPriority=
"251"
verticalHuggingPriority=
"251"
text=
"登录"
textAlignment=
"natural"
lineBreakMode=
"tailTruncation"
baselineAdjustment=
"alignBaselines"
adjustsFontSizeToFit=
"NO"
translatesAutoresizingMaskIntoConstraints=
"NO"
id=
"yTU-AM-EWm"
>
<rect
key=
"frame"
x=
"87"
y=
"53.666666666666664"
width=
"30.666666666666671"
height=
"17.999999999999993"
/>
<fontDescription
key=
"fontDescription"
type=
"system"
pointSize=
"15"
/>
<color
key=
"textColor"
white=
"1"
alpha=
"1"
colorSpace=
"custom"
customColorSpace=
"genericGamma22GrayColorSpace"
/>
<nil
key=
"highlightedColor"
/>
</label>
<button
opaque=
"NO"
contentMode=
"scaleToFill"
contentHorizontalAlignment=
"center"
contentVerticalAlignment=
"center"
buttonType=
"system"
lineBreakMode=
"middleTruncation"
translatesAutoresizingMaskIntoConstraints=
"NO"
id=
"A3K-aS-MS2"
>
<rect
key=
"frame"
x=
"27.000000000000007"
y=
"40"
width=
"90.666666666666686"
height=
"45"
/>
<state
key=
"normal"
title=
"Button"
/>
<buttonConfiguration
key=
"configuration"
style=
"plain"
title=
" "
/>
</button>
</subviews>
<color
key=
"backgroundColor"
red=
"0.40392156862745099"
green=
"0.27843137254901962"
blue=
"0.80392156862745101"
alpha=
"1"
colorSpace=
"calibratedRGB"
/>
<constraints>
<constraint
firstItem=
"tPP-U6-2bl"
firstAttribute=
"top"
secondItem=
"Pxu-Ab-4LJ"
secondAttribute=
"top"
id=
"0ib-UE-qPv"
/>
<constraint
firstItem=
"jsx-fR-l9y"
firstAttribute=
"top"
secondItem=
"N8W-Jk-3QN"
secondAttribute=
"top"
id=
"7r4-GT-gPQ"
/>
<constraint
firstItem=
"ANM-gF-Ryp"
firstAttribute=
"centerX"
secondItem=
"Pxu-Ab-4LJ"
secondAttribute=
"centerX"
id=
"B70-pI-njv"
/>
<constraint
firstItem=
"A3K-aS-MS2"
firstAttribute=
"top"
secondItem=
"nHZ-yn-vrn"
secondAttribute=
"top"
id=
"BnG-qp-mLz"
/>
<constraint
firstItem=
"A3K-aS-MS2"
firstAttribute=
"leading"
secondItem=
"nHZ-yn-vrn"
secondAttribute=
"leading"
id=
"Bvr-pR-RAa"
/>
<constraint
firstItem=
"R2r-0B-die"
firstAttribute=
"centerX"
secondItem=
"jgg-NR-sol"
secondAttribute=
"centerX"
id=
"D77-eV-JOh"
/>
<constraint
firstItem=
"Pxu-Ab-4LJ"
firstAttribute=
"centerY"
secondItem=
"jgg-NR-sol"
secondAttribute=
"centerY"
id=
"G3L-uE-BbM"
/>
<constraint
firstItem=
"iF7-4m-EFj"
firstAttribute=
"centerX"
secondItem=
"N8W-Jk-3QN"
secondAttribute=
"centerX"
id=
"Hug-5p-vQO"
/>
...
...
@@ -106,8 +124,11 @@
<constraint
firstItem=
"iF7-4m-EFj"
firstAttribute=
"bottom"
secondItem=
"jsx-fR-l9y"
secondAttribute=
"bottom"
id=
"T0t-Wn-9Oq"
/>
<constraint
firstItem=
"nHZ-yn-vrn"
firstAttribute=
"top"
secondItem=
"68r-Mh-6Lh"
secondAttribute=
"top"
constant=
"40"
id=
"UyG-1c-23H"
/>
<constraint
firstItem=
"N8W-Jk-3QN"
firstAttribute=
"top"
secondItem=
"nHZ-yn-vrn"
secondAttribute=
"bottom"
constant=
"48"
id=
"V60-sk-nEh"
/>
<constraint
firstItem=
"yTU-AM-EWm"
firstAttribute=
"centerY"
secondItem=
"nHZ-yn-vrn"
secondAttribute=
"centerY"
id=
"WqC-eH-iQT"
/>
<constraint
firstItem=
"ANM-gF-Ryp"
firstAttribute=
"bottom"
secondItem=
"tPP-U6-2bl"
secondAttribute=
"bottom"
id=
"XL6-Zu-eNL"
/>
<constraint
firstItem=
"yTU-AM-EWm"
firstAttribute=
"leading"
secondItem=
"nHZ-yn-vrn"
secondAttribute=
"trailing"
constant=
"15"
id=
"XvL-SE-dcD"
/>
<constraint
firstItem=
"nHZ-yn-vrn"
firstAttribute=
"leading"
secondItem=
"68r-Mh-6Lh"
secondAttribute=
"leading"
constant=
"27"
id=
"Zbu-cI-63r"
/>
<constraint
firstItem=
"yTU-AM-EWm"
firstAttribute=
"trailing"
secondItem=
"A3K-aS-MS2"
secondAttribute=
"trailing"
id=
"dds-cs-pwF"
/>
<constraint
firstAttribute=
"trailing"
secondItem=
"Pxu-Ab-4LJ"
secondAttribute=
"trailing"
constant=
"36"
id=
"esR-lk-6Xr"
/>
<constraint
firstAttribute=
"height"
constant=
"246"
id=
"gQU-JZ-ibt"
/>
<constraint
firstItem=
"R2r-0B-die"
firstAttribute=
"bottom"
secondItem=
"bSs-G8-8iO"
secondAttribute=
"bottom"
id=
"jpL-X2-hXa"
/>
...
...
@@ -118,6 +139,7 @@
<constraint
firstItem=
"R2r-0B-die"
firstAttribute=
"top"
secondItem=
"jgg-NR-sol"
secondAttribute=
"bottom"
constant=
"12"
id=
"nLo-BD-gSz"
/>
<constraint
firstItem=
"tPP-U6-2bl"
firstAttribute=
"centerX"
secondItem=
"Pxu-Ab-4LJ"
secondAttribute=
"centerX"
id=
"nRm-WY-ClR"
/>
<constraint
firstItem=
"jgg-NR-sol"
firstAttribute=
"centerY"
secondItem=
"N8W-Jk-3QN"
secondAttribute=
"centerY"
id=
"v7X-bO-XBS"
/>
<constraint
firstItem=
"A3K-aS-MS2"
firstAttribute=
"bottom"
secondItem=
"nHZ-yn-vrn"
secondAttribute=
"bottom"
id=
"x75-Fs-WpG"
/>
</constraints>
</view>
</subviews>
...
...
@@ -133,6 +155,7 @@
<outlet
property=
"accountBtn"
destination=
"jsx-fR-l9y"
id=
"Awo-Bf-d40"
/>
<outlet
property=
"cardManagerBtn"
destination=
"tPP-U6-2bl"
id=
"cL3-eo-sNO"
/>
<outlet
property=
"qrcodeBtn"
destination=
"bSs-G8-8iO"
id=
"JCK-pd-5zV"
/>
<outlet
property=
"userBtn"
destination=
"A3K-aS-MS2"
id=
"04h-pt-zeA"
/>
</connections>
<point
key=
"canvasLocation"
x=
"191.6030534351145"
y=
"77.816901408450704"
/>
</collectionViewCell>
...
...
iOS-2kj/login/KJLoginPhoneViewController.swift
浏览文件 @
414496fd
...
...
@@ -8,7 +8,11 @@
import
UIKit
class
KJLoginPhoneViewController
:
KJBaseViewController
{
@IBOutlet
weak
var
textfield
:
UITextField
!
@IBOutlet
weak
var
getVerificationBtn
:
UIButton
!
override
func
viewDidLoad
()
{
super
.
viewDidLoad
()
...
...
@@ -27,3 +31,9 @@ class KJLoginPhoneViewController: KJBaseViewController {
*/
}
extension
KJLoginPhoneViewController
:
UITextFieldDelegate
{
func
textFieldDidChangeSelection
(
_
textField
:
UITextField
)
{
}
}
iOS-2kj/login/KJLoginPhoneViewController.xib
浏览文件 @
414496fd
...
...
@@ -11,6 +11,8 @@
<objects>
<placeholder
placeholderIdentifier=
"IBFilesOwner"
id=
"-1"
userLabel=
"File's Owner"
customClass=
"KJLoginPhoneViewController"
customModule=
"iOS_2kj"
customModuleProvider=
"target"
>
<connections>
<outlet
property=
"getVerificationBtn"
destination=
"34J-W8-awt"
id=
"dDd-Tc-a15"
/>
<outlet
property=
"textfield"
destination=
"8X1-Ib-w80"
id=
"Ed0-a2-GfJ"
/>
<outlet
property=
"view"
destination=
"i5M-Pr-FkT"
id=
"sfx-zR-JGt"
/>
</connections>
</placeholder>
...
...
@@ -50,7 +52,7 @@
<constraint
firstAttribute=
"height"
constant=
"50"
id=
"ROJ-6n-0ip"
/>
</constraints>
<fontDescription
key=
"fontDescription"
type=
"system"
pointSize=
"14"
/>
<textInputTraits
key=
"textInputTraits"
/>
<textInputTraits
key=
"textInputTraits"
keyboardType=
"numberPad"
/>
</textField>
<button
opaque=
"NO"
contentMode=
"scaleToFill"
contentHorizontalAlignment=
"center"
contentVerticalAlignment=
"center"
buttonType=
"system"
lineBreakMode=
"middleTruncation"
translatesAutoresizingMaskIntoConstraints=
"NO"
id=
"34J-W8-awt"
>
<rect
key=
"frame"
x=
"27.666666666666657"
y=
"371.66666666666669"
width=
"338"
height=
"49"
/>
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论