Как изменить цвет текста вне просмотра [закрыто]IOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Как изменить цвет текста вне просмотра [закрыто]

Сообщение Anonymous »

Я пытаюсь изменить цвет текста из структуры представления (в результате ответа на HTTP-запрос)
Я использую Swiftui
Постоянный вид выглядит как это < /p>

Код: Выделить всё

import SwiftUI

var test = 0
struct ContentView: View {

@State var  TextColor=Color.black

var body: some View {
VStack{
HStack{
VStack {
Text("text")
.foregroundColor(TextColor)

...
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
< /code>
У меня есть другая функция, которая отправляет http -запрос < /p>
import Foundation
import SwiftUI
//send command to server
func SendCommand(source: String)
{
//send command to server

do {
let date=getDateAndTime()
let fullmassage=date+source
// Encrypt the message
let encryptedBase64String = try encrypt1(message: fullmassage, key: AESKey, iv: IVByte)
print("Encrypted Message: \(encryptedBase64String)")
let url = URL(string: "http:///"+encryptedBase64String)!
let request = URLRequest(url: url)
let task = URLSession.shared.dataTask(with: request) { (data, response, error) in
// Check for Error
if let error = error {
print("Error took place \(error)")
return
}

// Convert HTTP Response Data to a String
if let data = data,  let dataString = String(data: data, encoding: .utf8) {
AnalyzeResponse(inst: dataString)
}
}

task.resume()
}
catch{
}
}
< /code>
и тот, который анализирует ответ < /p>
func AnalyzeResponse(inst: String)
{
//@State var settings = AppSettings()
let seperator = CharacterSet(charactersIn: ":")
let input = inst
let Slist = input.components(separatedBy: seperator)
devicestatus.removeAll()
for devicestt in Slist
{
for elment in device
{
if devicestt.starts(with: elment)
{
let stt=devicestt.replacingOccurrences(of: elment, with:"")
if (stt.first=="-" || stt.first=="P")
{

< change the color of the text according to to the response>
}
else
{
print("\(stt)"                                        }
}
}
}

}
Если я попытаюсь его изменить, например, textcolor = .red I Get. Не могу найти TextColor в сфере действия
попытаться использовать

Код: Выделить всё

class AppSettings: ObservableObject {
@Published var appStatus: String = "Normal" // Example status
@Published var currentColor: Color = .purple // The color to change
}

struct ContentView: View {
@StateObject private var settings = AppSettings()

// Creates and owns the instance

( changed to `.foregroundColor(settings.currentColor` )
< /code>
и используемый настройки. Это создаст новый экземпляр каждый раз. 

и он не работает:
Я добавил @stateobject var settings = appsettings () 
В начале функции
asame..br/> Можно все изменить мне цвет.>

Подробнее здесь: https://stackoverflow.com/questions/796 ... de-of-view
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»