Создать класс, структуру или новый файл swift для создания многократно используемых текстовых полей с определенным стилем? - PullRequest
0 голосов
/ 10 марта 2020

Я новичок в Свифте, и ... хорошо, программирую все вместе. Я занимался этим несколько недель, но только вчера начал учиться быстро. Я пытаюсь создать приложение, похожее на другую версию правды или смелости, и вы нажимаете кнопку, и она случайным образом выбирает одно для вас и дает вам правду или смелость вместе с ней.

Я хочу использовать text коробку с некоторым дизайном, чтобы она выглядела в основном как карта, правда и дерзость. Я думал, что смогу как-то использовать @State var со списком этих предметов и сделать так, чтобы он отображался случайным образом. У меня там будет еще одна карта, но она не будет такой обычной, как правда и смеет.

Я просто не уверен, должен ли я использовать файл struct, class или swift для их создания, чтобы я мог использовать их повторно, поскольку list будет содержать более одного из каждый, чтобы создать больше редкости для другого таинственного.

Ответы [ 2 ]

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

вы можете создать свой собственный вид текстового поля

или создать модификатор для применения к нужным текстовым полям

оба способа верны

import SwiftUI

//Create own view - Custom Text Box
@available(OSX 10.15, *)
public extension View {
    func CustomTextBox( ) -> some View
    {
         Text()
             .AnyModifier1()
             .AnyModifier2()
             .AnyModifier3()
             .modifier( CustomModifier() ) // <- applying custom modifier
    }
}

//Create custom modifier
@available(OSX 10.15, *)
public struct CustomModifier: ViewModifier {
    @State var checker: Bool = false

    public init() { }

    public func body (content: Content) -> some View {
        HStack{
            content
                .AnyModifier1()
                .AnyModifier2()
                .AnyModifier3()
        }
    }
}
0 голосов

Хорошо, это нормально, когда ты не знаешь с чего начать. Как я понимаю, вы имеете в виду «что мне нужно создать?». Прежде всего, я предлагаю вам создать новый файл .swift. Также я предлагаю вам попробовать просто отделить View и некоторые логики c. Таким образом, ваш класс или структура просто «дадут некоторые данные», а ваш View просто представит эти данные. Для получения дополнительной информации о «вам нужно использовать классы или структуры», пожалуйста, прочитайте эту статью Apple . Коротко: выберите структуры по умолчанию. Но помните: здесь почти никто не напишет полный код вместо вас, и сообществу не нравятся подобные вопросы.

Я также советую вам go через Apple SwiftUI учебник , чтобы понять, как вы можете организовать приложение. Надеюсь, это поможет вам начать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...