如何在带有TapGestureHandler的React Native Reanimated事件中使用状态

问题描述

我对本机反应还很陌生,但是我被困住了... 我有一个事件可以处理TapGestureHandler按钮上的动画

this.isLoginIn = new Animated.Value(false);
    this.onStateChange = event([
      {
        nativeEvent: ({ state }) =>
          block([
            cond(eq(state,State.END),[
              set(
                this.buttonOpacity,ReanimatedUtils.runTiming(new Clock(),1,0)
              ),set(this.isLoginIn,true);
            ]),]),},]);


<TapGestureHandler
      onHandlerStateChange={onHandlerStateChange}
    >
      <Animated.View
        style={{
          ...styles.container,...animatedStyle,...style,}}
      >
        <Text style={{ ...styles.text,...textStyle }}>
          {title.toUpperCase()}
        </Text>
      </Animated.View>
    </TapGestureHandler>

我愿意使用此isLoginIn值来显示与此不同的表单类型

{this.isLoginIn._value === true ? (
            <LoginInput
              title={"Login"}
              buttonText="Login"
              onPress={() => {}}
              onSignUpPress={() => {}}
            ></LoginInput>
          ) : (
            <LoginInput
              title={"Registration"}
              buttonText="SignIn"
              onPress={() => {}}
              onSignUpPress={() => {}}
            ></LoginInput>
          )}
        </Animated.View>

但是这不起作用,我真的不知道如何正确地问我的问题,以便在互联网上找到解决方案。 我尝试使用状态值,但这不起作用,因为它位于与我猜想的UI线程不同的线程上。 有人帮我吧。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)