Как добавить массив текста и изображений в Segmentio в Swift - PullRequest
0 голосов
/ 21 марта 2020

Я использую модуль segmentio для сегмента с изображением и текстом. Я добавил модуль в проект и добавил представление в раскадровку, назначил имя класса Segmentio и импортировал Segmentio.

Вот как это сделать добавить массив текста и изображений в сегменте

я пробовал, как показано ниже:

 import UIKit
 import Segmentio
 class EventsDashboardViewController: UIViewController {

@IBOutlet weak var segmentioView: Segmentio!

//var swipeMenuArray: NSMutableArray = []
var content = [SegmentioItem]()

override func viewDidLoad() {
        super.viewDidLoad()

 segmentioView.setup(
    content: [SegmentioItem],
    style: SegmentioStyle,
    options: SegmentioOptions?
)


    let tornadoItem = SegmentioItem(
        (title: "Alert",
        image: UIImage(named: "img1")),
        (title: "Message",
        image: UIImage(named: "img2")),
        (title: "Stared",
        image: UIImage(named: "img3"))
    )
    content.append(tornadoItem)

 }

 }

ошибки :

Последовательные объявления на строка должна быть разделена символом ';'

Отсутствующие метки аргумента 'title: image: selectedImage:' в вызове

Последовательные объявления в строке должны быть разделены ';'

Ответы [ 2 ]

0 голосов
/ 21 марта 2020

Это не действительный Swift. Часть с надписью

segmentioView.setup(
    content: [SegmentioItem],
    style: SegmentioStyle,
    options: SegmentioOptions?
)

недопустима. Это выглядит как комбинация вызова функции и определения функции.

Я вижу, что документация для Segmentio не очень ясна и также содержит этот неверный код.

Правильное использование может быть чем-то как это:

override func viewDidLoad() {
  super.viewDidLoad()

  content.append(SegmentioItem(title: "Alert", image: UIImage(named: "img1"))
  content.append(SegmentioItem(title: "Message", image: UIImage(named: "img2"))
  content.append(SegmentioItem(title: "Stared", image: UIImage(named: "img3"))

  segmentioView.setup(
    content: content,
    style: .imageBeforeLabel,
    options: nil
  )
}

Я не знаю Segmentio, поэтому это может быть не на 100% правильно.

0 голосов
/ 21 марта 2020

Я не использовал этот модуль, но я думаю, что SegmentioItem не является массивом типов, он выглядит как элемент массива, попробуйте это для одного элемента:

let tornadoItem1 = SegmentioItem(title: "Alert", image: UIImage(named: "img1"))
content.append(tornadoItem1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...