- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我希望手机和平板电脑上屏幕 S 的边框边缘不同。平板电脑横向和纵向模式有多种变体。
如何为手机、平板电脑纵向、平板电脑横向上的变体创建不同的边距尺寸?
对于那些好奇如何在 Android 上操作的人,我们只需在正确的文件夹中创建一些资源文件:
最佳答案
其他答案已经解决了屏幕检测任务。然而,仍然存在检测代码是否在平板设备上运行的问题。您可以使用 react-native-device-info 检测到这一点包,特别是其 isTablet
方法。因此,作为示例,在您的组件中:
constructor(){
super();
this.state = {orientation: 'UNKNOWN'}
this._onOrientationChanged = this._onOrientationChanged.bind(this);
}
_onOrientationChanged(orientation){
this._setState({orientation})
}
componentDidMount(){
Orientation.addOrientationListener(this._onOrientationChanged);
}
componentWillUnmount(){
Orientation.removeOrientationListener(this._orientationDidChange);
}
render(){
let layoutStyles;
if(DeviceInfo.isTablet()){
layoutStyles = this.state.orientation == 'LANDSCAPE' ? landscapeTabletStyle : portraitTabletLandscape; // Basic example, this might get more complex if you account for UNKNOWN or PORTRAITUPSIDEDOWN
}else{
layoutStyles = this.state.orientation == 'LANDSCAPE' ? landscapeStyle : portraitLandscape;
}
render(){
<View style={[styles.container, layoutStyles]} // And so on...
}
}
请注意,状态一开始就保存着 UNKNOWN
值。看一下包函数的getInitialOrientation()
。我故意忽略了这一点,因为它只是读取 JS 代码加载时设置的属性,并且我不确定这是否满足您的用例(即这不是您的第一个屏幕)。我通常喜欢做的是将旋转值存储在 redux 存储中(在其中将方向值初始化为 getInitialOrientation() 的值,然后仅订阅方向监听器一次)。
关于react-native - 如何在 React Native 上检测平板电脑景观,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41268486/
我想为我的原始布局的每个尺寸制作一个单独的横向布局 我有 activity_main.xml。我已经对其进行了调整以适应多种屏幕尺寸: 现在,我想为每个不同的屏幕尺寸创建横向布局。 android 文
我在徘徊如何在 opengl 中创建大地形。我的第一个想法是使用 blender 并创建一个平面, segmentation 它,创建地形并将其导出为 .obj。在查看了 Blender 之后,我认为
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 5 年前。 Improve this qu
我知道有一个类似的问题 Only ONE VIEW landscape mode ,而且我在问这个问题之前已经仔细阅读了它。 我的应用程序中有一个名为 webview 的 WKWebview,而 we
我正在使用 emberjs 开发一个系统,它需要很多 jquery 插件。例如:我只需要从 div 制作所见即所得编辑器。 $('.summernote').summernote(); 据我所知,我需
这个问题已经有答案了: Android, landscape only orientation? (6 个回答) 已关闭 4 年前。 我正在尝试在 Android Studio 中创建一个包含多个字段
我已经创建了一个简单的网站,我正在尝试使其具有响应性 - 可以在 http://www.teamlist.co 上查看它.我使用@media 查询来定位 iOS,它在纵向方向上看起来不错,但不适合 w
我正在尝试将内存中(但尚未在层次结构中)UIViewController 的 View 渲染到内存中图像缓冲区中,这样我就可以做一些有趣的过渡动画。但是,当我将 UIViewController 的
我有一个 UIView,其 subview 在旋转到横向模式后不想完全填充 self.view。我尝试了很多方法,从设置自动调整大小蒙版到设置旋转后 subview 的框架,它们要么不起作用,要么问题
我似乎找不到解决方法。 在移动 safari 中的 ios9 上,如果 webapp 使用 position:absolute 和 bottom:0 作为内容区域以覆盖整个屏幕,当处于 landsca
我是一名优秀的程序员,十分优秀!