Ⅰ 在qt中用c++设计一个刻度尺(屏幕尺)
用qt的2d绘图就搞定了,切换坐标划线在标注数字。
Ⅱ 怎样获取android手机屏幕的大小
下面的代码即可获取屏幕的尺寸:
在一个Activity的onCreate方法中,编写以下代码:
DisplayMetrics metric = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metric);
int width = metric.widthPixels; // 宽度(PX)
int height = metric.heightPixels; // 高度(PX)
float density = metric.density; // 密度(0.75 / 1.0 / 1.5)
int densityDpi = metric.densityDpi; // 密度DPI(120 / 160 / 240)
需要注意的是,在一个低密度的小屏手机上,仅靠上面的代码是不能获取正确的尺寸的。
比如说,一部240x320像素的低密度手机,如果运行上述代码,获取到的屏幕尺寸是320x427。
因此,研究之后发现,若没有设定多分辨率支持的话,
Android系统会将240x320的低密度(120)尺寸转换为中等密度(160)对应的尺寸,
这样的话就大大影响了程序的编码。
所以,需要在工程的AndroidManifest.xml文件中,加入supports-screens节点,如下:
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:resizeable="true"
android:anyDensity="true" />
这样当前的Android程序就支持了多种分辨率,那么就可以得到正确的物理尺寸了。
public static String getDisplayMetrics(Context cx) {
String str = "";
DisplayMetrics dm = new DisplayMetrics();
dm = cx.getApplicationContext().getResources().getDisplayMetrics();
int screenWidth = dm.widthPixels;
int screenHeight = dm.heightPixels;
float density = dm.density;
float xdpi = dm.xdpi;
float ydpi = dm.ydpi;
str += "The absolute width:" + String.valueOf(screenWidth) + "pixels\n";
str += "The absolute heightin:" + String.valueOf(screenHeight)
+ "pixels\n";
str += "The logical density of the display.:" + String.valueOf(density)
+ "\n";
str += "X dimension :" + String.valueOf(xdpi) + "pixels per inch\n";
str += "Y dimension :" + String.valueOf(ydpi) + "pixels per inch\n";
return str;
}
Android 在代码中设置屏幕属性(全屏、无标题)
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN); //设置全屏
this.requestWindowFeature(Window.FEATURE_NO_TITLE); //设置没有标题
Ⅲ 设计师如何为Android应用标注尺寸
设计 Android 应用的最佳实践:
1. 画布大小定位 720 x 1280,72 dpi
2. 只使用偶数单位的尺寸,比如 96 px 的列表项高度,16 px 的边距,64 px 的图标边长
3. 只使用 24 pt,28 pt,36 pt 和 44 pt 的字体
4. 设计完成以后,所有尺寸的 px 值除以 2 作为 dp 数值交给工程师
5. 所有字体的 pt 值除以 2 作为 sp 数值交给工程师
6. 所有切图变成三份,分别是原始大小、缩小 1.5 倍,缩小 2 倍,分别作为 xhdpi,hdpi,mdpi 的资源交给工程师
如果你还有好奇心,可以继续往下看这个结论是怎么来的。
相信你已经看过这篇文档中关于 Android 中各种尺寸单位的介绍,没看过的最好看一下
http://developer.android.com/guide/topics/resources/more-resources.html#Dimension
在 Android 应用设计中涉及到的单位都是密度无关像素(Density-independent Pixels),这个说法太拗口了,通俗点讲,Android 应用设计中只用物理尺寸,类似厘米,英寸这种单位,不用像素。之所以这样,是由于像素在手机领域说不清楚问题,比方说规定列表项高度是 48 px,在 HTC C510e 上看起来就不错,但在三星 Galaxy SIII 上看起来就会非常矮,导致很难看,这是因为这两个机器的屏幕的 dpi 相差很大,前一个大约 160 dpi,后一个大约 320 dpi。这就是手机屏幕不同带来的问题,如果不考虑平板,不同主要是密度不同,而不是尺寸不同,也不是分辨率不同,给设计带来困扰的根本是屏幕密度不同。不幸的是,很少人对这个有概念,通常介绍手机,会说屏幕尺寸,3.5
寸还是 4 寸,会说分辨率,480 x 800 还是 720 x 1280,但通常不会介绍屏幕密度是多少。其实通过尺寸和分辨率可以算出密度来,dpi 的 定义是 dot per inch,即每英寸的像素点,把分辨率和尺寸除一除就能得到。一个不确切的分法是,720 x 1280 的手机很可能接近 320 dpi (Android 里的 xhdpi),480 x 800 的手机很可能接近 240 dpi (Android 里的 hdpi)。
Android 选择的单位是 dp 和 sp,dp 的定义是“在 160 dpi 的屏幕上,1 dp 大约等于 1 px”。这个说法也很拗口,简单点说,1 dp ≈ 1 / 160 inch,他就是物理界的一长度单位。用这个单位设计就统一了,比方说规定列表项高度是 48 dp,在所有手机上看起来都差不多是 48 / 160 inch 那么高,虽然在不同手机上它对应了不一样多的像素点,但这个转换是 Android 手机完成的,每个 Android 手机都得知道在我这 1 dp 对应多少像素。sp 也是同样解释,18
sp 的字在所有手机上看起来应该都差不多大(自己改了字体大小设置的除外)。看到这里,可能有人会想,那岂不是不同手机显示的内容不同。确实是这样,同样一个列表,在 A 手机上只能显示五行,但在 B 个手机上就能显示六行;还是这个列表,在 A 手机上文字左边的留白就显得没有 B 手机多。
铺陈完了,逐条解释开始的最佳实践。
设计师在设计的时候是用不了 dp 的,他不可能拖一个 48 x 48 dp 的框,不可能设置一个 8 dp 的边距,Photoshop 里全是 px。于是我们就只有挑一个特定密度的屏幕,在这个特定密度的屏幕上,dp 和 px 的关系是确定,把设计做了,再把 px 转换成 dp 给工程师。另外有一点是,长度可以乘除一下就解决,图片是不能除的,图片必须手动缩放。
我们挑哪一个密度好呢?答案是挑密度最大的,因为图片缩小比放大好,放大会失真,选 320 dpi 作为目标屏幕,为其他屏幕提供图片时,只需要缩小。而 320 dpi 屏幕的分辨率最常见的是 720 x 1280,以这个尺寸作为画布尺寸,是最带感的,这样的设计稿就和应用在最多数的 320 dpi 的机器上运行起来的样子一样。当然你可以选其他画布大小,但再大也不见得方便,这个大小也够施展了。72 dpi 是 Photoshop 的默认设置,不要改就好,这个数字和后面的换算有关系。
字体的问题,Android 4.0 以后的设计规范中建议只使用四种字号,分别是 12 sp,14 sp,18 sp 和 22 sp,这也是 Android framework 用到的全部字号。我们需要找到在这个画布上,这些字号和 pt 的对应关系,以及,px 和 dp 的对应关系。有两种算法:
算法一
根据 dp 的定义“在 160 dpi 的屏幕上,1 dp 大约等于 1 px”,那么在 320 dpi 的屏幕上,1 dp 约等于 2 px,我们就是为 320 dpi 做的设计,所有 px 值除以 2 就是 dp 值。字体略复杂一点,1 pt = 1 / 72 inch,即在 72 dpi 的画布上,1 pt = 1 px,我们的画布就是 72 dpi,又有 1 sp 约等于 2 px(同 dp 的定义),所以 1 sp = 2 pt,所有 pt 值除以 2 就是 sp 值。
算法二
可以想象是把一个 320 dpi 的手机屏幕放大到了 Photoshop 里,放大倍数是 320 / 72,即手机上的 1 dp,在画布上就是 320 / 72 dp,而 1 dp = 1 / 160 inch,所以在画布上就是 2 / 72 inch,而画布是 72 dpi,所以在画布上就是 2 px,即手机上的 1 dp 对应画布上的 2 px。字体的计算一样,只是多一个在 72 dpi 上,1 pt = 1 px 的转换。
至此,都算清楚了,在这个画布上,px 到 dp,pt 到 sp 都是除以 2 的关系。
最后,给 320 dpi 做的图片,到 240 dpi,160 dpi 上就要分别缩小 1.5 倍和缩小 2 倍。120 dpi 的机器已经很罕见,可以不考虑了
Ⅳ android屏幕适配做哪几个尺寸
android屏幕适配尺寸有全屏模式、4:9、8:12多种。
android屏幕适配尺寸有多种,具体的要结合自己的兴趣爱好和手机的自身的实际情况,具体设置标准如下:
1、不要使用绝对布局,这会限制你的手机屏幕的更换。
2、尽量使用match_parent ,从而保证屏幕的最大化利用。
3、尽量使用权重(android:layout_weight),保持手机屏幕合理布局。
4、尽量使用android的shape 自定义,形成纯色背景。
5、可以在res目录上新建layout-HxW.xml的文件夹进行在特定分辨率下适配。
拓展资料:
由于笔记本电脑采用的液晶屏的大小和分辨率是根据它的市场定位决定的,所以为了适应不同人群的消费能力和使用习惯,笔记本电脑的液晶显示器的尺寸和分辨率种类远远要比台式液晶显示器多。
Ⅳ android界面设计尺寸有哪些
Android界面尺寸:480*800、720*1280、1080*1920。[单位:像素] Android比iPhone的寸尺多了很多套,建议取用720*1280这个尺寸,这个尺寸720*1280中显示完美,在1080*1920中看起来比较清晰,切图后的图片文件大小也适中,应用的内存消耗也不会过高。
Ⅵ 手机屏幕尺子怎么使用
移动屏尺的使用方法是点亮移动屏,将白色小边向屏幕内侧滑动,打开“侧屏应用”,向左或向右滑动,打开“快速工具”,点击底部的“尺”进行测量。
以Android系统vivo 7为例,如下所示:
1、打开手机屏幕,可以在任何一页上看,屏幕左侧中间有一个白色的小边。
注意事项:
1、由于有些软件与手机型号不兼容,在以后使用之前最好用真正的尺子进行比较。
2、如果手机是传统尺寸的5.0英寸、4.5英寸、5.5英寸屏幕,使用起来就放心了。
Ⅶ 在线刻度尺
如下:
刻度尺是以长度单位为标准作刻度记号,测量物体长度的工具,刻度尺的分度值一般为1mm,一般规格的学生量程为10cm、15cm、20cm 。刻度尺测量长度是物理实验的基本技能,也是其他测量仪器正确读数的基础。
一般情况下应估读到最小刻度值的下一位。如学生用三角尺最小刻度是mm,用它测量长2cm的长度,若正好对准在刻度线上时,正确记录应为2.00cm,其中2.0cm是尺面准确读出的数,由于无估读数,需在毫米的10分位上加“0”。
注意:记录测量结果时必须写上相应的单位。
Ⅷ 我想要屏幕拾色器和屏幕尺子小工具,是在学android教程里的老师用的软件,qq:769986721
虽然没找到你要的这个软件,不过我觉得PicPick这个更好。
介绍:
具备了截取全屏、活动窗口、指定区域、固定区域、手绘区域功能,支持滚动截屏,屏幕取色(你要的),支持双显示器,具备白板、屏幕标尺(你要的)、直角坐标或极坐标显示与测量,具备强大的图像编辑和标注功能。截图可以保存到剪贴板、自动或手动命名的文件(png/gif/jpg/bmp)。 功能很强大,体积也很小,绝对不会像PS那样的级别。
* 全面支持Windows(完全支持Windows7)
* 多语言支持,超过28种语言
* 所有功能都可在双显示器下使用
* 不需要注册表、不需要系统目录,复制至USB即可运行
具体的你可以网络,网络图片看一下,界面挺漂亮的(win7风格),给个邮箱发个你,我的是3.1.5版的(最新版是3.1.9)。
希望对你有帮助·,望采纳。
Ⅸ Android有没有人实现过刻度尺效果
得到刻度尺的值很简单,这需要你自定义一个view,然后在view的onTouch方法中去获取手指移动过程中的横坐标信息,然后用当前的横坐标坐标信息event.getX()减去刻度尺的0刻度的横坐标rulerStartX,得到刻度值rulerDistance = event.getX() - rulerStartX。这里获取的值的单位为像素,这需要和刻度尺的单位进行换算,这样就可以获取到当前的刻度值了。
Ⅹ 有没有手机软件可以量身高的!
有一款叫做测距仪