小编swe*_*py_的帖子

在兄弟视图之间反应Native Pass数据

我正在使用React Native开发一个简单的待办事项列表应用程序,我的问题如下:我的项目根目录中有一个NavigatorIOS,一个包含ListView作为初始路由的组件,以及一个导致任务创建视图.

创建新任务后,将弹出视图以显示ListView.我正在尝试将新创建的任务添加到此ListView(其数据源包含在组件状态中).

如何进行这样的操作,有什么好的做法?我会在纯本机应用程序中使用委托,但在这里,两个视图都由NavigatorIOS实例处理.

index.ios.js

addTask() {
    console.log("Test");
},

render() {
        return (
            <React.NavigatorIOS
                ref="nav"
                style={styles.container}
                tintColor="#ED6063"
                initialRoute={{
                    title: "Tasks",
                    component: TasksList,
                    rightButtonTitle: 'Add',
                    onRightButtonPress: () => {
                        this.refs.nav.navigator.push({
                            title: "New task",
                            component: NewTask,
                            passProps: {
                                onTaskAdded: this.addTask
                            },
                            leftButtonTitle: "Cancel"
                        });
                    }
                }}/>
        );
    }
Run Code Online (Sandbox Code Playgroud)

NewTask.js

taskAdded() {
console.log("Added: " + this.state.title + " - " + this.state.description);
this.props.onTaskAdded({
    title: this.state.title,
    description: this.state.description
});
this.props.navigator.pop();
}
Run Code Online (Sandbox Code Playgroud)

TasksList.js

var dataSource = new ListView.DataSource({
    rowHasChanged: (r1, r2) => r1 !== …
Run Code Online (Sandbox Code Playgroud)

react-native

16
推荐指数
2
解决办法
8042
查看次数

由于"nil"参数导致XCTestAssertNil崩溃

我正在使用XCTest在我的项目中编写单元测试,当使用XCAssertNil()XCAssertNotNil()方法时,XCTest框架崩溃了.

这是我的测试:

XCTAssertNotNil(messageCollection.fieldName, "field_name must be not-nil")
Run Code Online (Sandbox Code Playgroud)

这是堆栈跟踪:

2015-06-22 17:05:17.629 xctest[745:8747] *** Assertion failure in void _XCTFailureHandler(XCTestCase *, BOOL, const char *, NSUInteger, NSString *, NSString *, ...)(), /SourceCache/XCTest_Sim/XCTest-7701/XCTestFramework/OtherSources/XCTestAssertionsImpl.m:41
Test Case '-[Wakanda_iOS_Framework_Tests.WAKAdapterTest testEntityCollectionParsing]' started.
2015-06-22 17:05:17.631 xctest[745:8747] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Parameter "test" must not be nil.'
Run Code Online (Sandbox Code Playgroud)

似乎XCTest有一个名为test的参数,它不能为零,对于预期检查nil(或非nil)值的方法来说很奇怪......有没有其他人得到这个问题并解决了它?

xcode ios xctest swift

16
推荐指数
3
解决办法
4887
查看次数

在iOS上内嵌图像和文本

我有一个全角标签,带有动态文本,因此可以是两个字符或十个字符.我需要在左侧部分内嵌显示图像,始终与第一个字母相距10px.请参阅下面的示例.

简短的文字示例

大文本示例

现在,我只是放了一个全角标签,在运行时,我用boundingRectWithSize:方法测量文本宽度,并以编程方式调整我的图像约束.

你有没有任何好主意建立这种界面而不用手动测量文字宽度?

uikit ios swift

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

将外部框架嵌入到Swift中的自制私有框架中

我使用Xcode 6和Swift构建了一个框架,我的框架使用SwiftyJSON作为依赖 - 通过Carthage添加.我存档了我的框架,并为使用的模拟器和iOS设备创建了一个版本lipo,当我尝试将我的框架用于一个空的应用程序时,我在运行时遇到了崩溃:

dyld: Library not loaded: @rpath/SwiftyJSON.framework/SwiftyJSON
Referenced from: /Users/hd/Library/Developer/CoreSimulator/Devices/324FD1CD-4A06-459B-AE6D-318197B5697E/data/Containers/Bundle/Application/555871BB-7AA1-4AED-90CE-EE0A628A794F/CollaborativeTodo.app/Frameworks/XXXXX.framework/XXXXX
Reason: no suitable image found.  Did find:
/Users/hd/Library/Developer/CoreSimulator/Devices/324FD1CD-4A06-459B-AE6D-318197B5697E/data/Containers/Bundle/Application/555871BB-7AA1-4AED-90CE-EE0A628A794F/CollaborativeTodo.app/Frameworks/SwiftyJSON.framework/SwiftyJSON: no matching architecture in universal wrapper
Run Code Online (Sandbox Code Playgroud)

这是我的树状看起来像 - 我的框架名称是故意模糊的:

项目arborescence

常规选项卡:

一般

构建阶段: 建立阶段

如果我在我的项目中使用Carthage包含SwiftyJSON,它可以工作,但我不希望用户被强制包含第三方库.如何将SwiftyJSON嵌入我的框架并告诉Xcode在运行时使用嵌入式版本,而不是试图在项目中找到框架?

ios ios-frameworks swift

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

使用自定义枚举作为值在Swift中创建字典"即时"

我正在使用该performSegueWithIdentifier:sender:方法,我想通过sender参数传递几个参数.在Objective-C,我创建的NSDictionary 上即时使用@{"myKey": myValue}的语法.

我在Swift中尝试了几种方法,但编译器总是给我一个错误:'AnyObject?' 没有名为{'Element'或'Key'}的成员

如何重现Swift中的预期行为?谢谢!

编辑:这是我的代码:

self.stopCamera()
dispatch_async(dispatch_get_main_queue(), { () -> Void in
    self.performSegueWithIdentifier("backCameraVCtoFrontCameraVC", sender: [("image", image),  ("fitler", filter)])
})
Run Code Online (Sandbox Code Playgroud)

enums nsdictionary ios swift

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

标签 统计

ios ×4

swift ×4

enums ×1

ios-frameworks ×1

nsdictionary ×1

react-native ×1

uikit ×1

xcode ×1

xctest ×1