大佬教程收集整理的这篇文章主要介绍了android – 可用屏幕的大小,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我想得到屏幕的大小,将其划分为相同高度和宽度的方形部分.
我正在使用FrameLayout,我的正方形是ImageView的子类.
我这样做
context.getresources()getDisplaymetrics()heightPixels.; —-> 1205
context.getresources()getDisplaymetrics()像素宽度.; ——> 800
我认为1205不是1280,因为屏幕的顶部和底部有两个Android菜单.
我的每个方块都是30×30像素.
要知道我可以绘制多少个正方形作为最大值:
int x = 1205/30;
当我尝试在坐标(x-1)* 30上绘制我的图像时,它会部分地从屏幕上绘制出来.
我怎么知道我的应用程序可以使用的屏幕部分?
我希望我能很好地解释我的问题.
非常感谢.
class MyImageView extends ImageView { Context context; int myWidth = 0; int myHeigh = 0; int numBoxesX = 0; int numBoxesY = 0; private final int BoxWidth = 30; private final int BoxHeight = 30; ImageView(Context C) { super(c); context = c; } }
在类中,您重写onSizeChange函数
@Override protected void onSizeChanged (int w,int h,int oldw,int oldh) { super.onSizeChanged(w,h,oldw,oldh); myWidth = w; myHeight = h; // Set up other things that you work out from the width and height here,such as numBoxesX = myWidth / BoxWidth; numBoxesY = myHeight / BoxHeight; }
public void drawSubBox(int x,int y,...) { // Fail silently if the Box being drawn doesn't exist ... if ((x<0) || (x>=numBoxesX)) return; if ((y<0) || (y>=numBoxesY)) return; // Your code to draw the Box on the screen ... }
创建此视图后,您可以将其添加到布局中,并像访问任何其他视图一样访问它的功能,包括您添加的任何内容以定义子框的大小等等.因此,在此类的活动中使用此布局
@H_89_31@myImageView miv; miv = topView.findViewById("idforMyImageViewSeTinLayoutXMLfile"); miv.drawSubBox(0,...);以上是大佬教程为你收集整理的android – 可用屏幕的大小全部内容,希望文章能够帮你解决android – 可用屏幕的大小所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。