当前位置: 首页 > 知识库问答 >
问题:

反应本地datetimepicker问题。在这个代码为什么平台。OS==='ios'?true:假?

宫瀚
2023-03-14
import React, {Component} from 'react';
import {View, Button, Platform} from 'react-native';
import DateTimePicker from '@react-native-community/datetimepicker';

export default class App extends Component {
  state = {
    date: new Date('2020-06-12T14:42:42'),
    mode: 'date',
    show: false,
  }

  setDate = (event, date) => {
    date = date || this.state.date;

    this.setState({
      show: Platform.OS === 'ios' ? true : false, //*Question: Why true for ios?
      date,
    });
  }

  show = mode => {
    this.setState({
      show: true,
      mode,
    });
  }

  datepicker = () => {
    this.show('date');
  }

  timepicker = () => {
    this.show('time');
  }

  render() {
    const { show, date, mode } = this.state;

    return (
      <View>
        <View>
          <Button onPress={this.datepicker} title="Show date picker!" />
        </View>
        <View>
          <Button onPress={this.timepicker} title="Show time picker!" />
        </View>
        { show && <DateTimePicker value={date}
                    mode={mode}
                    is24Hour={true}
                    display="default"
                    onChange={this.setDate} />
        }
      </View>
    );
  }
}

如果平台。OS===true对于ios,datetimepicker窗口将始终显示,并且不会永远关闭。为什么要区别对待android和ios?代码来自官方的github,所以我想它有一些合理的理由。

共有2个答案

诸葛砚文
2023-03-14

这只是因为你想显示选择器,以防设备是IOS。

徐安康
2023-03-14

嗯,他们有两种不同的外观模式,以保持本地的外观和感觉。ios datetimepicker是一个组件,可以放在视图中并保持打开(由轮子制成),而android更像是一个弹出窗口,因此它必须在用户操作触发器时关闭和打开。

希望这将有助于问候!马可

 类似资料:
  • 我试图做一个代码,将打印所有元素的内容与从一些链接,但它不起作用,我不知道为什么,这是代码: 当我粘贴“someurl”而不是

  • 请注意,在表单页和表单结果页上调用。 如果有人能在这个脚本中找出潜在的错误原因,我将不胜感激! 附注:我知道验证码脚本的缺点。我知道某些机器人仍然可以读出它们。我不想使用Recaptcha,因为它对我的用户来说太难了(不同的语言+很多次老用户)。我也知道md5很容易解密。 表单的结果 这工作得很好,所以非常感谢这个解决方案。 然而,我在这里看到了一些潜在的缺点。我注意到至少4个查询,感觉有点资源密

  • 问题内容: 因此,我刚刚意识到反编译Java代码是多么容易。我一直在网上搜索,但似乎无法弄清楚 为什么 这么容易。每次我在Google上搜索“为什么要反编译文件?”之类的信息时,或“为什么Java这么容易反编译”,我所得到的只是指向可以轻松反编译我的代码的软件的链接。因此,我向您介绍StackOverflow:为什么Java可以转换回容易阅读的源代码,而C ++和其他语言对反编译不是很友好? 谢谢

  • 我正在做一项任务来编译Pascal的子集,在初始程序中有一行代码如下: 这让我非常困惑,因为返回一个布尔值或,因此{Bool,Int}中的 中的

  • 问题内容: 我已经为Employee类的父类是抽象的并且父类中的clone()方法是抽象的编写了此克隆方法。我想用此代码复制Employee对象的原始数据类型,而不是复制每个原始数据单独键入,但是此代码在我调用clone()方法的行中有问题。(此代码在Employee类中) 错误是:来自对象类型的方法clone()不可见。 但是我的Employee类在类层次结构中,可以访问Object类中受保护的