, поскольку я новичок в swift, у меня возник вопрос по поводу моего кода, в чем именно заключается его проблема!У меня есть табличное представление, в которое я должен поместить некоторые данные, которые я получаю из API.Я использую alamofire и мойю.
Я вызываю этот функционал в своем виртуальном компьютере для запроса в Интернете:
class SmsPresenter
{
var view:SmsView?
func attachView(view: SmsView){
self.view = view
}
func gettingEveyThing( aptId : String){
ApiGenerator.request(targetApi: ApartemanService.getSmsInfo(aptId: aptId), responseModel: smsModelList.self, success: { (response) in
self.view?.GettingEverthingSuccess(response: response.body)
}) { (error) in
print(error)
self.view?.GettingEvethingFailed(errorMessage: "error")
}
}
Это моя модель данныхчто я храню их здесь:
typealias smsModelList = [SmsModel]
struct SmsModel:Codable {
var unitNo:Int?
var unitPlaque:String?
var billText:String?
var contacts:[ContactsModel?]
}
struct ContactsModel:Codable
{
var id :Int?
var selected :Bool?
var phoneNumber : String?
var name : String?
}
И вот эта функция, когда я получаю 200 код состояния:
func GettingEverthingSuccess(response: smsModelList?) {
print("getting evething success")
guard let response = response else {
return
}
self.data = response
self.tableview.reloadData()}
Мои сокращения:
var Presenter = SmsPresenter()
var data : smsModelList?
var Pphone : [String] = []
var Nname : [String] = []
var Iid : [Int] = []
заполнение таблицы:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "SmsCell") as? SmsTableViewCell
if let contacts = data?[indexPath.row].contacts
{
for eachmain in contacts
{
Pphone.append((eachmain?.phoneNumber)!)
Nname.append((eachmain?.name)!)
Iid.append((eachmain?.id)!)
}
}
}
что именно не так с моим кодом: |!когда я запускаю код, он ставит первое число для первой строки, затем снова ставит второе число для первого ro, хотя он должен ставить второе число и другие числа для своей строки ячеек.
![Photo](https://i.stack.imgur.com/Da7ABm.jpg)
Api Response:
[
{
"contacts": [
{
"id": 9827,
"selected": true,
"phoneNumber": "00987684044",
"name": "OWNER"
}
],
"unitNo": 1,
"unitPlaque": "Jack",
"billText": "TEXTTEXT"
},
{
"contacts": [
{
"id": 10145,
"selected": true,
"phoneNumber": "098887776655",
"name": "mmm"
}
],
"unitNo": 2,
"unitPlaque": "mm",
"billText": "TEXTTEXT"
}
]
crashLog PPhoto
фото: фото
окончательный ответ на мой вопрос был комбинацией всех ответов