小编Bib*_*ibs的帖子

全宽按钮带有柔性盒,反应原生

我是flexbox的新手,无法在react-native中生成全宽按钮.我一直想把自己搞清楚一天,并且已经阅读了互联网上的每篇相关文章/帖子都无济于事.

我希望有两个TextInput元素跨越屏幕的整个宽度,它们下方的按钮也跨越屏幕的整个宽度.该TextInput元素横跨屏幕的整个宽度,但是这似乎是在默认情况下,我运行Android模拟器.

这是我的代码:

 var MyModule = React.createClass({
render: function() {
    return (
        <View style={styles.container}>
            <View style={styles.headline}>
                <Text>Hello World</Text>
            </View>

            <View style={styles.inputsContainer}>
                <TextInput style={[styles.input]} placeholder="Email" />
                <TextInput
                    secureTextEntry={true}
                    style={[styles.input]}
                    placeholder="Password"
                />
                <TouchableHighlight
                    style={styles.fullWidthButton}
                    onPress={this.buttonPressed}
                >
                    <Text>Submit</Text>
                </TouchableHighlight>
            </View>
        </View>
    );
},
buttonPressed: function() {
    console.log("button was pressed!");
}
});

var paddingLeft = 15;

var styles = StyleSheet.create({
inputsContainer: {
    // Intentionally blank because I've tried everything & I'm clueless
},
fullWidthButton: {
    // Intentionally blank …
Run Code Online (Sandbox Code Playgroud)

flexbox reactjs react-native

38
推荐指数
3
解决办法
5万
查看次数

react-navigation从嵌套的StackNavigator隐藏TabBar的屏幕

我是新手,react-navigation并试图围绕如何做以下事情:

鉴于此导航结构:

RootTabNavigator 

  LoggedOut_StackNavigator

    ...

  LoggedIn_StackNavigator

    LoggedIn_TabNavigator <-- TabBar rendered by this Navigator

      TabA_StackNavigator

        ScreenA
        ScreenB
Run Code Online (Sandbox Code Playgroud)

我希望能够从导航ScreenAScreenB"从右幻灯片"过渡使用典型的,在这样一种方式,TabBar 可见的ScreenA,但可见ScreenB.换句话说,当我导航到时ScreenB,我希望它占据整个窗口.

一旦用户转换ScreenAScreenB,他们可以按后退按钮返回ScreenA,或使用TabBar仍然可见的相同转换导航到新路线.

我尝试过的:

  • navigationOptions.tabBarVisible:这个属性似乎只适用于TabA_StackNavigator自身,这意味着它的堆栈中的所有屏幕也隐藏了TabBar.将其添加到StackNavigator内的屏幕无效.

  • 添加一个新AllScreens_StackNavigator的兄弟LoggedIn_TabNavigator并导航到此导航器中的路径,我收到错误:Expect nav state to have routes and index, {"routeName":"ScreenB", "params": {}, "key": "init-id-1516..."}.我调度的导航操作试图这样做:

    {
      "action": Object {
        "params": Object {}, …
    Run Code Online (Sandbox Code Playgroud)

navigation reactjs react-native react-navigation

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

理解 react-native-reanimated 执行

我是新手,react-native-reanimated并试图了解它的工作原理。下面的代码在屏幕中间呈现一个框。在初始渲染中,该框向右平移 4 秒,之后其位置将重置为屏幕中间。

... imports omitted for brevity

export default class App extends React.Component {
  state = {
    clock: new Clock(),
    translation: new Value(0),
  };

  onPress = () => {
    startClock(this.state.clock);
  };

  getTranslation = (clock, translation) => {
    const state = {
      finished: new Value(0),
      position: translation,
      time: new Value(0),
      frameTime: new Value(0),
    };
    const config = {
      duration: 4000,
      toValue: new Value(300),
      easing: Easing.inOut(Easing.ease),
    };
    return block([
      cond(clockRunning(clock), 0, [
        set(state.finished, 0),
        set(state.position, 0),
        set(state.time, 0),
        set(state.frameTime, …
Run Code Online (Sandbox Code Playgroud)

react-native expo

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

如何为只读派生的NSArray属性实现KVO?

我想NSArray为声明为的属性实现KVO readonly.此readonly属性的getter 返回私有的副本,该私有NSMutableArray备份支持公共的副本readonly:

在我的.h:

@interface MyClass : NSObject
@property (readonly, nonatomic) NSArray *myArray;
- (void)addObjectToMyArray:(NSObject *)obj;
- (void)removeObjectFromMyArray:(NSObject *)obj;
@end
Run Code Online (Sandbox Code Playgroud)

在我的.m:

@interface MyClass()
@property (strong, nonatomic) NSMutableArray *myPrivateArray;
@end

@implementation MyClass

- (NSArray *)myArray {
    return (NSArray *)[self.myPrivateArray copy];
}

- (void) addObjectToMyArray:(NSObject *)obj {
    [self willChangeValueForKey:@"myArray"];
    [self.myPrivateArray addObject:obj];
    [self didChangeValueForKey:@"myArray"];
}

- (void) removeObjectToMyArray:(NSObject *)obj {
    [self willChangeValueForKey:@"myArray"];
    [self.myPrivateArray removeObject:obj];
    [self didChangeValueForKey:@"myArray"];
}
@end
Run Code Online (Sandbox Code Playgroud)

在我的测试中,我看到我打电话时抛出异常didChangeValueForKey: …

objective-c key-value-observing ios

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