小编Ale*_*lov的帖子

如何在Swift中知道从内存中删除结构?

在swift 类中有一个方法deinit(),我们可以在其中定义类的实例将从内存中删除.我们如何知道struct将从内存中删除?

例如,

struct Vehicle { ... }
var v: Vehicle? = Vehicle()
v = nil
Run Code Online (Sandbox Code Playgroud)

struct memory-leaks ios automatic-ref-counting swift

9
推荐指数
2
解决办法
2621
查看次数

搜索时键入一个符号后,TextInput 失去焦点

我有一个平面列表

<View style={styles.container}>
    <FlatList data={this.state.restaurants} 
              renderItem={({ item }) => this.renderItem(item.restaurant)}
              keyExtractor={restaurant => restaurant.key}
              ListHeaderComponent={() => this.renderHeaderComponent()} 
              ItemSeparatorComponent={this.renderSeparator}/>
  </View>
Run Code Online (Sandbox Code Playgroud)

并在标题中包含 TextInput。我使用 TextInput 作为搜索栏。

 renderHeaderComponent() {
    return(
      <View style={{ flexDirection: 'row', marginTop: 10, borderBottomColor: '#CED0CE', borderWidth: 1, borderColor: 'transparent' }}>
        <Icon name='search' size={30} style={{ marginLeft: 10, marginRight: 10 }}/>
        <TextInput
            style={{height: 40, flex: 1}}
            onChangeText={(text) => this.onChangeText(text)}
            placeholder='Type text for search'
            clearButtonMode='while-editing'
            value={this.state.searchText}
      />
      </View>
    );
  };
Run Code Online (Sandbox Code Playgroud)

在 onChangeMethod 中,我过滤了我的数据。

 onChangeText(text) {
    const filteredRestaurants = _.filter(this.props.list, (restaurantObject) => {
      const restaurant = …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-native redux react-redux

6
推荐指数
2
解决办法
2244
查看次数

iOS Swift Coordinator 模式和导航控制器的后退按钮

我正在使用模式MVVM+Coordinator。我的每个控制器都是由coordinators. 但是,当点击Navigation控制器的后退按钮时,停止我的协调器的正确方法是什么?

class InStoreMainCoordinator: NavigationCoordinatorType, HasDisposeBag {

    let container: Container

    enum InStoreMainChildCoordinator: String {
        case menu = "Menu"
        case locations = "Locations"
    }

    var navigationController: UINavigationController
    var childCoordinators = [String: CoordinatorType]()

    init(navigationController: UINavigationController, container: Container) {
        self.navigationController = navigationController
        self.container = container
    }

    func start() {
        let inStoreMainViewModel = InStoreMainViewModel()
        let inStoreMainController = InStoreMainController()
        inStoreMainController.viewModel = inStoreMainViewModel

        navigationController.pushViewController(inStoreMainController, animated: true)
    }
}
Run Code Online (Sandbox Code Playgroud)

mvvm ios swift rx-swift coordinator-pattern

6
推荐指数
1
解决办法
5223
查看次数

错误:无法在swift中推断泛型参数'T'

我有从嵌套数组生成flatted数组的函数.它适用于int数组.

let array: [Any] = [1, 2, [3]]

func makeFlatArray(_ array: [Any]) -> [Int] {
    var flatArray = [Int]()
    for item in array {
        if let item = item as? Int {
            flatArray.append(item)
        } else if let item = item as? [Any] {
            let result = makeFlatArray(item)
            flatArray += result
        }
    }
    return flatArray
}
Run Code Online (Sandbox Code Playgroud)

但我想让它变得通用,我在尝试时遇到了错误.

func makeFlatArrayGeneric<T>(_ array: [Any]) -> [T] {
    var flatArray = [T]()
    for item in array {
        if let item = item as? T { …
Run Code Online (Sandbox Code Playgroud)

arrays generics algorithm ios swift

3
推荐指数
1
解决办法
3616
查看次数

ARC工作时?编译还是运行时?

在ARC(自动引用计数)工作时在Objective-C或Swift中?在编译阶段还是在运行时阶段?那为什么重要呢?

objective-c automatic-ref-counting swift

3
推荐指数
2
解决办法
1140
查看次数

UserDefaults在Swift中是否安全?怎么检查?

UserDefaults在Swift中是否安全?怎么检查?例如,如果有10个线程使用UserDafaults写入数据.我们如何检查线程安全?

multithreading nsuserdefaults ios swift

2
推荐指数
1
解决办法
682
查看次数

在 Swift 中使用 NSObject 类的目的是什么?

据我所知,在 Objective-C 中,所有类都继承自 NSObject 类。斯威夫特呢?我们出于什么目的需要在 Swift 中继承 NSObject?

nsobject swift

1
推荐指数
1
解决办法
1656
查看次数