在实际开发中,React-Native通过调用Dimensionsget('window')去获取全面屏手机(MI 10)的高度时,发现获取到的高度要比实际手机高度来的短一些,针对此种情况对全面屏手机做适配。
首先通过获取屏幕的纵横比来判断当前手机是否为全面屏,常规纵横比为大于18 (16:9)。(这里只做了简单判断,当然也有很多更为准确的方案)
查阅相关资料后发现是因为全面屏的statusBar高度问题。
导包:
定义高和宽并计算纵宽比:
对纵宽比做判断并拿到真实高度(针对安卓):
存疑:
1计算纵宽比,当手机为全面屏时,是否会因为获取到的长度会比实际的少,导致wh(纵宽比)降低,影响后面的判断。
补充:MI 10 取Dimensionsget('window')height 拿到的高度为710左右,屏幕宽度在392,纵宽比计算得181。
2在链接1中认为差一个StatusBar的高度,实际编写中,发现链接2的两个高度较为合理。
补充:全面屏发现小米10 占两个高度 , 另一款全面屏测试机占一个高度
实际测试中发现ios设备如果为全面屏则不需要进行处理 所以这里我们需要加一层判断。
在你的cell里面加一个UILable,你需要做的是计算你的内容的高度,然后在heightForRowAtIndexPath里面设置你的cell的高度。这是一种方法: #define CELL_CONTENT_WIDTH 3200f (你的cell的宽度) #define CELL_CONTENT_MARGIN 100f CGSize cons
<style type="text/css">
#leftbox{
float:left;
width:200px;
background-color:#FF0000;
}
#rightbox{
float:left;
width:200px;
background-color:#FFFF00
}
bottom{
display:block;
clear:both;
background:#0000FF;
width:400px;
height:50px;
color:#FFFFFF;
}
</style>
<div id="leftbox">左边div的高度会随右边自动调整</div>
<div id="rightbox">右边div的内容是变化的,比如像这样很多很多也没有关系,因为左边和下边的div会跟着变化的。右边div的内容是变化的,比如像这样很多很多也没有关系,因为左边和下边的div会跟着变化的。右边div的内容是变化的,比如像这样很多很多也没有关系,因为左边和下边的div会跟着变化的。右边div的内容是变化的,比如像这样很多很多也没有关系,因为左边和下边的div会跟着变化的。右边div的内容是变化的,比如像这样很多很多也没有关系,因为左边和下边的div会跟着变化的。</div>
<script language="javascript">
if(rightboxoffsetHeight>leftboxoffsetHeight)
{ leftboxstyleheight=rightboxoffsetHeight+"px";}
else
{ rightboxstyleheight=leftboxoffsetHeight+"px";}
</script>
<div class="bottom">这里是下方的div,会随着上面div的高度变化而移动</div>
添加窗口open监听,getContentPane()getSize()可以获取当前真实内部大小,用JFrame的高度-getContentPane()getSize()height = 标题高度,设置JFrame高度为想要的内部高度+标题高度
addWindowListener(new WindowAdapter() {public void windowOpened(WindowEvent ev) {
int realH = getContentPane()getSize()height;
int titleH = dh - realH;
setBounds((screenSizewidth - dw) / 2, (screenSizeheight - dh) / 2, dw, dh+titleH);
}
});
这个jquery应该可以娶到的。给你一个实例,注意自己添加jquery文件哈
<script language='javascript'>$(function(){
$("#adds")click(function(){
$("#xx")append("<h2>添加内容</h2>");
});
$("#geth")click(function(){
vh=$("#xx")height();
$("#xx")prepend("<h2>我的高度为:"+vh+"</h2>")
});
});
</script>
<div style="width:200px; height:200px; display:block; overflow-y:scroll">
<div id="xx">
sdfsdfs
sdfsdf
sdfsdf
</div>
</div>
<a href="javascript:;" id="adds">点击给XX里面添加内容</a>
<a href="javascript:;" id="geth">点击获取xx的高度</a>
以上就是关于React-Native Dimensions 获取高度不准确解决全部的内容,包括:React-Native Dimensions 获取高度不准确解决、使用AutoLayout 设置的UILable 自动换行,怎么获得真实高度、怎么取到Div的真实高度等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)