Widget Layout for 960x540 and 854x480

2019-08-02 15:50发布

Both of these sizes pull from the same layout folder. So...I am wondering how I can create widget that looks good on both? I have attached screen shots to show the 2 displays that are pulling the same resources.

960 x 540 Display 240 dpi

854 x 480 Display 240 dpi

Any ideas?

1条回答
三岁会撩人
2楼-- · 2019-08-02 16:22
Both of these sizes pull from the same layout folder.

In Android the layout was chosen based on the density of the Devices Different Screen Configuration for eg:

(ldpi) screens (~120dpi).

(mdpi) screens (~160dpi).

(hdpi) screens (~240dpi).

(xhdpi) screens (~320dpi).

Both 960x540 and 854x480 falls in hdpi layout , so you are getting same layout for both one.

To solve this issues , to get apt UI for both specification create separate XML for both inside hdpi-layout. for eg: 960_540.xml and 854_480.xml

In Activity check the Screen Size of Device so that set corresponding ContentView

You can get Screen Size using Display Metrics below Code :

    Display display = getWindowManager().getDefaultDisplay(); 
    screenWidth = display.getWidth(); 
    screenHeight = display.getHeight();
    dm = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(dm);
    String str_ScreenSize = dm.widthPixels + " x " + dm.heightPixels;
    str_ScreenSize = "dd" + " x " + dm.heightPixels;

    if(screenHeight==854 & screenwidth==480){
        setContentView(R.layout.854_480);
    }
    else if(screenHeight==960 && screenwidth==540){
        setContentView(R.layout.960_540);
    }
查看更多
登录 后发表回答