Is it safe to use .getWidth on Display even though its deprecated

后端 未结 3 1695
挽巷
挽巷 2020-12-23 16:13

So i have a small problem, i\'m writing a function which need to send screen width to server. I got it all to work, and i use:

Display display = getWindowMan         


        
相关标签:
3条回答
  • 2020-12-23 16:34

    You can check for API level at runtime, and choose which to use, e.g.:

    final int version = android.os.Build.VERSION.SDK_INT;
    final int width;
    if (version >= 13)
    {
        Point size = new Point();
        display.getSize(size);
        width = size.x;
    }
    else
    {
        Display display = getWindowManager().getDefaultDisplay(); 
        width = display.getWidth();
    }
    
    0 讨论(0)
  • 2020-12-23 16:35

    May be this approach will be helpful:

    DisplayMetrics displaymetrics = new DisplayMetrics();
    mContext.getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
    int screenWidth = displaymetrics.widthPixels;
    int screenHeight = displaymetrics.heightPixels;
    
    0 讨论(0)
  • 2020-12-23 16:45

    If you want to be correct, use this approach:

    int sdk = android.os.Build.VERSION.SDK_INT;
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB_MR2) {
        Display display = getWindowManager().getDefaultDisplay();
        int width = display.getWidth();
    } else {
        Point size = new Point();
        display.getSize(size);
    }
    
    0 讨论(0)
提交回复
热议问题