相关疑难解决方法(0)

Android:将屏幕分辨率/像素作为整数值

这是一个非常简单的问题,我没有找到答案:/我如何快速访问屏幕分辨率(宽度,高度)作为整数值?

我试过这个,但它总是在我的模拟器上显示为零:

DisplayMetrics dm = new DisplayMetrics();
int width = dm.widthPixels / 2;
Run Code Online (Sandbox Code Playgroud)

在我的情况下,我想动态创建一个tableRows表,每个表包含两个cols.这个cols all将填充屏幕的一半宽度.

有人能给我一个暗示吗?

android resolution

10
推荐指数
4
解决办法
5万
查看次数

何获得s8可用屏幕的android?

我是android的菜鸟。我关于18:9设备可用高度的问题。当我尝试在这些纵横比中获得可用的屏幕时,我的应用程序可以正常运行所有android设备,但是何时?在三星银河s8中编译它不起作用。我正在尝试获取可用的设备屏幕。我已经尝试过这些链接中的方法

/sf/ask/3053963321/

https://android-developers.googleblog.com/2017/03/update-your-app-to-take-advantage-of.html

我动态地使用

DisplayMetrics metrics = this.getResources().getDisplayMetrics(); width = metrics.widthPixels; height = metrics.heightPixels ;

我试过了

private int getSoftButtonsBarHeight() {
        // getRealMetrics is only available with API 17 and +
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
            DisplayMetrics metrics = new DisplayMetrics();
            getWindowManager().getDefaultDisplay().getMetrics(metrics);
            int usableHeight = metrics.heightPixels;
            getWindowManager().getDefaultDisplay().getRealMetrics(metrics);
            int realHeight = metrics.heightPixels;
            if (realHeight > usableHeight)
                return realHeight - usableHeight;
            else
                return 0;
        }
        return 0;
    }
Run Code Online (Sandbox Code Playgroud)

当我尝试设置参数MATCH_PARENT的高度时,它工作得很好。但是我需要找到可用的高度像素来按比例设计其他视图。

实际上,这些代码DisplayMetrics metrics = this.getResources().getDisplayMetrics(); height = metrics.heightPixels ;在我的Activity中有效,但是当我尝试在另一个窗口(从FramaLayout扩展并添加到Activity中)中使用它时,则无法正常工作。

这是我的代码块

public class StudentLoginActivity …
Run Code Online (Sandbox Code Playgroud)

android aspect-ratio uinavigationbar display

6
推荐指数
1
解决办法
751
查看次数