Различие между пальцем расположения и каталогом расположения

Для наблюдателей Swift вы можете получить эту функцию, используя функцию Encodable. Я объясню, как:

  1. Соответствовать вашему объекту протоколу Encodable

    class ExampleObj: NSObject, Encodable {
        var prop1: String = ""
        var prop2: String = ""
    }
    
  2. Создать расширение для Encodable, чтобы предоставить toDictionary функциональность

     public func toDictionary() -> [String: AnyObject]? {
        let encoder = JSONEncoder()
        encoder.outputFormatting = .prettyPrinted
        guard let data =  try? encoder.encode(self),
              let json = try? JSONSerialization.jsonObject(with: data, options: .init(rawValue: 0)), let jsonDict = json as? [String: AnyObject] else {
            return nil
        }
        return jsonDict
    }
    
  3. Вызовите toDictionary для вашего экземпляра объекта и получите доступ к свойству keys.

    let exampleObj = ExampleObj()
    exampleObj.toDictionary()?.keys
    
  4. Вуаля! Получите доступ к вашей недвижимости следующим образом:

    for k in exampleObj!.keys {
        print(k)
    }
    // Prints "prop1"
    // Prints "prop2"
    
12
задан Athira 10 June 2019 в 13:18
поделиться

1 ответ

Официальное объяснение находится в документации SDK . Предполагая, что эти три являются единственными каталогами ресурсов макета:

  • Макеты в res / layout-land-finger / будут использоваться, если устройство имеет сенсорный экран, удобный для пальцев (т.е. емкостный, а не резистивный). сенсорный экран или без сенсорного экрана) и удерживается в альбомной ориентации.
  • Макеты в res / layout-finger / будут использоваться, если устройство оснащено сенсорным экраном, удобным для пальцев, и не удерживается в альбомной ориентации .
  • Макеты в res / layout / будут использоваться, если устройство имеет резистивный или не сенсорный экран
12
ответ дан 2 December 2019 в 21:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: