Форум программистов, компьютерный форум, киберфорум
Наши страницы

Swift

Войти
Регистрация
Восстановить пароль
 
dnywka
0 / 0 / 0
Регистрация: 30.06.2017
Сообщений: 2
#1

Не выводит данные с массива в UIPickerView и и ответ выводится до запятой - Swift

30.06.2017, 17:34. Просмотров 481. Ответов 1
Метки нет (Все метки)

Сам новичок в данной среде разработки, опираюсь на туториалы и методичку от Apple. Делаю калькулятор по обычной формуле: вводишь значения при помощи pickerview и дальше программа считает эти данные по формуле. Столкнулся с проблемой при запуске программы вместо значений с массива выводит вопросительные знаки. Гуглил, не помогло. Также, итоговый ответ округляется и не выводит значения после запятой. Прошу подсказать в чем причина?
Вот код:

Код
import UIKit

class ViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource {

    @IBOutlet weak var label: UILabel!
    @IBOutlet weak var picker: UIPickerView!
    
    var num : NSArray = Array(0...240) as NSArray
    var sum = 0
    var sum1 = 0
    var sum2 = 0
    var sum3 = 0
    var sum4 = 0
    var sumTotal = 0
    var sumPart1 = Double()
    var sumPart2 = Double()
    let vsoKoef = Double(42)
    
    override func viewDidLoad() {
        
        super.viewDidLoad()
        self.picker.delegate = self
        self.picker.dataSource = self
        
    }
    
    public func numberOfComponents(in pickerView: UIPickerView) -> Int {
        
        return 5
    }
    
    func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
        
        return num.count
    
    }
    
    private func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> Int! {
        
        return num[row] as! Int
        
    }
    
    func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
        
        if (component == 0) {
            sum1 = num[row] as! Int
        }
        
        if (component == 1) {
            sum2 = num[row] as! Int
        }
        
        if (component == 2) {
            sum3 = num[row] as! Int
        }

        if (component == 3) {
            sum4 = num[row] as! Int
        }
        
        if (component == 4) {
            sumTotal = num[row] as! Int
        }

        sum = sum1 + sum2 + sum3 + sum4
        
        if sum > 0 && sumTotal != 0 {
            sumPart1 = Double(sum / sumTotal)
        }
    
        if sum > 0 && sumTotal != 0 && sumPart1 > 0 {
            sumPart2 = sumPart1 * vsoKoef
        }
        
        if sum > 0 && sumTotal != 0 && sumPart1 > 0 && sumPart2 > 0 {
            label.text = "\(sumPart2)"
        }
    }
}
0
Миниатюры
Не выводит данные с массива в UIPickerView и и ответ выводится до запятой  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.06.2017, 17:34
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Не выводит данные с массива в UIPickerView и и ответ выводится до запятой (Swift):

в одной форме ввожу данные об ученике выводится результат со второй формы но не выводит данные с перовой форм - Delphi
Тут такая проблема в одной форме ввожу данные об ученике на второй форме есть программа для тестирования в конце выводится результат со...

Как вывести правильный ответ с массива который выводится рандомными элементами? - C#
Как вывести правильный ответ с массива который выводится рандомными элементами? Есть код Random rand = new Random(); ...

Если есть в базе данные, то всё выводится, иначе выводится шаблон, где должны быть данные - PHP БД
если если в базе данные то всё выводится как только их нет то выводится шаблон где должны быть данные, как его убрать вообще чтобы не было?...

Написать программу, которая выводит пример на вычитание, запрашивает ответ пользователя, проверяет его и выводит сообщение о правильности - C++
Написать программу, которая выводит пример на вычитание (в пределах 100), запрашивает ответ пользователя, проверяет его и выводит сообщение...

Ответ не выводится - C (СИ)
Парни у меня не выводиться ответ, ошибки найти не могу! void Rebuild(int *a, int size) //это сортировка {int i,k=0; for...

Не выводится 2 знака после запятой - C#
В выводе среднего значения по столбцам не работает вывод с 2мя знаками после запятой. Подскажите, пожалуйста, в чем дело? using System; ...

1
dnywka
0 / 0 / 0
Регистрация: 30.06.2017
Сообщений: 2
30.06.2017, 17:49  [ТС] #2
Вот еще фото
0
Миниатюры
Не выводит данные с массива в UIPickerView и и ответ выводится до запятой  
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.06.2017, 17:49
Привет! Вот еще темы с ответами:

Не выводится ответ на экран - Pascal ABC
uses crt; function Factor(f:longint):longint; var n,k:longint; begin n:=1; k:=1; while n<=f do ...

Структуры. Не выводится ответ - C++
#include "stdafx.h" #include <iostream> using namespace std; struct complex { double Re; double Im; void Read(); bool...

Не выводится XML ответ - PHP
Вот запрос $curl = curl_init("http://shop.digiseller.ru/xml/shop_product_info.asp"); $xml = '<digiseller.request> <product>...

Выводится неправильный ответ - Delphi
Здравствуйте! Ребят помогите пожалуйста! Вот модуль procedure bikvad(a,b,c:real; var n:integer; var x3,x4,t1,t2:real); var x1,x2:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru