Hoşgeldin. Soru sormak veya cevaplamak için hemen üye ol.

UITableViewCell içerisinde UISlider'ın size ölçümü

0 oy
24 kez görüntülendi
13, Temmuz, 2015 ios development kategorisinde burhanaksendir tarafından soruldu
13, Temmuz, 2015 burhanaksendir tarafından düzenlendi
Programsal olarak UITableView içerisine eklediğim bir UITableViewCell'in içerisine 2 label ve ortasına da bir uislider ekledim. Ancak hizalama ve ölçülendirmede sıkıntı yaşıyorum. Ulaşmak istediğim sonuç şu resimdeki gibi:

http://i.hizliresim.com/zVvl94.png

Kodlarım şu şekilde:

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

        

        let cell = tableView.dequeueReusableCellWithIdentifier("myCell") as! UITableViewCell

        

        if indexPath.row == 1 {

            

            cell.textLabel?.text = "A"

            cell.detailTextLabel?.text = "A"

            cell.detailTextLabel?.font = UIFont(name: "Avenir Next", size: 25)

            cell.textLabel?.font = UIFont(name: "Avenir Next", size: 19)

            var widthCell  = CGRectGetWidth(cell.contentView.bounds)

            print(widthCell) // -> burası 0.0 dönüyor alamıyorum width değerini ve ölçülendirmeyi de yapamıyorum

            widthCell = widthCell == 0.0 ? 255 : widthCell - cell.textLabel!.bounds.size.width - cell.detailTextLabel!.bounds.size.width // bu  detailTextLabel'ın size'ı da 0 dönüyor :(

            

            //buradaki değerleri de kafadan sallıyorum Storyboard'a bakıp :) Ama istediğim sonuç resimdeki gibi olmalı her cihaz boyutunda

            let slider = UISlider(frame: CGRectMake(30, 6, widthCell, 30))

            slider.maximumValue = 18
            slider.minimumValue = 14
            slider.value = 16
            cell.addSubview(slider)

        }

        return cell

    }

1 cevap

+1 oy
20, Temmuz, 2015 yasin tarafından cevaplandı
20, Temmuz, 2015 burhanaksendir tarafından seçilmiş
 
En İyi Cevap

UISlider özelleştirilebilir. Arka plan ve slider knob imajları değiştirilebilir. Sizin verdiğiniz örnek de custom bir arka plan kullanılıyor muhtemelen. Kendi slider'ınızı da ancak bu şekilde özelleştirebilirsiniz. Default UISlider seçeneklerinde verdiğiniz örnekteki gibi birşey hazırlayamazsınız.

20, Temmuz, 2015 burhanaksendir tarafından yorumlandı
Sağolun. TableView'in width değerini aldım ve diğer label'ların da width değerini ondan çıkardım :) Zorladım biraz ama oldu gibi sanki
...