canvas.drawLine(10, 10, 10, canvas.getHeight(), paint);   //画竖线
  canvas.drawLine(0, canvas.getHeight(), 100, canvas.getHeight(), paint);//画横线
竖线能看到,横线就看不到了,如果有人说在边界的话,即使我减去30 还是看不到横线
  canvas.drawLine(0, canvas.getHeight()-30, 100, canvas.getHeight()-30, paint);
  
  说明得到的高度已经超出屏幕了,怎么回事??怎么解决??
  我本来是想放一张图片的,结果发现图片超出范围了,我是继承的View,覆写的onDraw
方法,怎么都不成功,还有我直接使用默认的设置背景结果也超出了
  setBackgroundResource(R.drawable.gameback);  

解决方案 »

  1.   

    横竖屏getHeight()和getWidth()是反过来的
      

  2.   

    判断当前是否是为横竖屏 在来执行相关的drawLine方法
      

  3.   

    看上去好像你都没检测canvas.getHeight() 返回来的值,需要检测一下就能知道为什么看不见底下的横线了。而且canvas的尺寸是比View大的。默认Canvas Constructor的denisity是DENSITY_NONE
    为了尺寸设置为0-0.你需要为canvas设置setDesity,或者从display获得屏幕高度,或者用View.getHeight()