xmartlabs / Eureka

Elegant iOS form builder in Swift
https://eurekacommunity.github.io
MIT License
11.77k stars 1.33k forks source link

Range Row #892

Open korgx9 opened 7 years ago

korgx9 commented 7 years ago

Hi, Is there any kind of row in Eureka for choosing ranged data in form? Example: Usually such row needed when choosing prices from and to.

James-Coleman commented 7 years ago

iOS does not include a range slider by default but there are plenty of libraries that allow this, e.g. https://github.com/warchimede/RangeSlider

Creating a custom cell to include a UI element like that in Eureka can be done programmatically or via a .xib file.

korgx9 commented 7 years ago

There is no need a range slider. It should be some row which allows choosing ranges from->to. It could be cell with only one textrow on became active it shows uipickerview with two components, from->to. I think every form should contain element like this as must have

James-Coleman commented 7 years ago

So what you actually want is a PickerRow with an arbitrary number of components in the pickerView. This is determined by PickerViewCell, and the options are contained in _PickerViewRow. You'd also have to account for the new value being an array of values (in PickerViewCell.didSelectRow).

mtnbarreto commented 7 years ago

Would love to have a custom row using https://github.com/warchimede/RangeSlider available from https://github.com/EurekaCommunity.

Anyone wants to help?

korgx9 commented 7 years ago

I understand that UIKit doesn't have any range sliders and that is why there is no any in Eureka by default. Usually in search forms or in filters forms, there is a big need in such rows. Creating a custom row takes more time You can find RangeSlider that I already created by link below. Here. Please, contribute to it. It should be improved.

alexanderathan commented 6 years ago

Hello there,

I have implemented the RangeSlider that @korgx9 created using the same TTRangeSlider library. Is there a way to pass the min and max selected values to the form.values() every time that I change the range slider's selected values?

Also, what about the onPresent extension? Is it possible to use it in a custom row like that?

Thank you very much in advance for the reply.

mats-claassen commented 6 years ago

As for the form values, the value of the row should be a struct/object that holds both min and max values. onPresent can be used if the row conforms to PresenterRowType