getWindowManager().getDefaultDisplay().getWidth();
系统提示getWindowManager()不能用。

解决方案 »

  1.   

    那是因为没有Context对象,你可以向这里传个Context参数的
      

  2.   

    不是的,我已转了context了。但是,程序是没有Activity的。context.getWindowManager().getDefaultDisplay().getWidth(); 
    这样写,会报错。getWindowManager()提示不对。
      

  3.   

    提示不能使用static,但是getWindowManager()是非static方法.所以报错。哪位能知道办法?
    public static lcd_width()
    {
      int temp_lcd_width = context.getWindowManager().getDefaultDisplay().getWidth();
    }
      

  4.   

    getWidnow 那个必须要activit对象才行  没有activity 那你界面用什么显示的? 没界面?
      

  5.   

    有个service的,通过windowmanager服务获取
      

  6.   

    拿别人的activity呢。比如说拿栈顶的activity
      

  7.   


    LZ如果项目组存在activity的话    直接拿项目中存在activity实例来获取getWindowManager没有的话也可以自己创造context对象【我自己一般是在项目中接收开机广播,来启动一个服务,获取该服务的实例为context对象】
      

  8.   

    放到activity里面获取到屏幕分辨率,然后保存到文件,或者全局变量里,然后再使用就没问题!
      

  9.   

    WindowManager wManager = (WindowManager)this.sfvSurfaceView.getContext().getSystemService("window");
    Display display = wManager.getDefaultDisplay();
    iScreenWidth = display.getWidth();其中sfvSurfaceView是一个SurfaceView,是在一个线程中的,由Activity传进来的。我在我的这个线程中使用它来获取到屏幕宽。