相关疑难解决方法(0)

5676
推荐指数
33
解决办法
121万
查看次数

如何使用代码确定设备屏幕大小类别(小,普通,大,xlarge)?

有没有办法确定当前设备的屏幕尺寸类别,如小,普通,大,xlarge?

不是密度,而是屏幕尺寸.

android screen android-screen-support

306
推荐指数
8
解决办法
11万
查看次数

在Android上获取Chrome中的物理屏幕尺寸/ dpi /像素密度

在Android上,有没有一种安全的方法可以在Chrome中获得实际正确的屏幕物理尺寸?如有必要,旧版Chrome和Android可能会被排除在范围之外.

之前的研究

stackoverflow上有很多关于从javascript(或css)中获取设备的实际物理屏幕尺寸的死胡同问题.似乎html api标准化与实际浏览器实现之间没有融合,更不用说浏览器实现依赖于OS api,而OS api依赖于硬件提供正确的信息.

顺便说一下,一些先前的答案是神秘的(2011年等),假设当时普遍存在一定的像素密度,因此无用.其他与webkit相关,而Chrome闪烁可能已经取代了chrome(?)中的webkit.

我想通过将事物限制在Android上的Chrome来探索简单解决方案的存在.

注意

这完全是关于浏览器内部的javascript(或css)解决方案,而不是本机应用程序的解决方案.

javascript android google-chrome

83
推荐指数
5
解决办法
6万
查看次数

来自服务的Android获取屏幕尺寸

我通过使用以下活动获得了屏幕尺寸,

Display display = getWindowManager().getDefaultDisplay();
Run Code Online (Sandbox Code Playgroud)

但同样的事情不是从服务工作(显而易见的原因,我知道!)但我迫切需要从服务中获取显示尺寸.有人可以解释一下获取ScreenSize的任何其他方法吗?

所以我想,就我所知,我们无法从服务中获得屏幕尺寸.我现在完成的Wat是默认情况下至少启动活动1ce并在共享首选项中以像素为单位存储实际屏幕大小.我使用共享首选项来获取服务启动时的值.

这是唯一的方法吗?我们无论如何从服务中获取屏幕大小?

android screen

30
推荐指数
3
解决办法
2万
查看次数

如何在android中计算密度值

谁能解释一下android用来计算屏幕密度的公式?等待你的回应)))

android

12
推荐指数
2
解决办法
2万
查看次数

如何找出使用哪种可绘制资源?

我想知道在运行来自ldpi,mdpi,hdpi或xhdpi的应用程序时使用了哪个可绘制资源.

android android-layout

12
推荐指数
2
解决办法
6480
查看次数

getheight()px还是dpi?

Help.I发现ListView的高度,我不知道px或dpi?我需要dpi

final ListView actualListView = mPullRefreshListView.getRefreshableView();

actualListView.getViewTreeObserver().addOnGlobalLayoutListener(
                new ViewTreeObserver.OnGlobalLayoutListener() {
                    public void onGlobalLayout() {
                        height = actualListView.getHeight();  

                    }
                });
Run Code Online (Sandbox Code Playgroud)

android dpi

12
推荐指数
1
解决办法
2万
查看次数

在Android上检测4K UHD屏幕

我试图检测设备何时能够以4K UHD(3840x2160)分辨率输出.许多设备(如nVidia Shield TV和Sony Xperia Z5 Premium)都会报告它们以1080p运行,即使它们具有UHD功能,因为它们默认为非视频布局的1080p输出.我需要一些方法来检测它们是否能够区分它们以及像Nexus Player这样的非4K设备.

这是我用来确定当前分辨率的代码:

WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Point size = new Point();
display.getSize(size);
Run Code Online (Sandbox Code Playgroud)

在Shield TV上,即使ExoPlayer报告它在3840x2160输出视频,也会一直返回1920x1080.

android android-tv

10
推荐指数
1
解决办法
2872
查看次数

在同一分辨率屏幕上,不同设备上的布局显示不同

问题:在同一分辨率屏幕上,不同设备上的布局显示不同.我在三星Galaxy S4(1080x1920)和LG G2(1080x1920)上测试过它.它的分辨率相同,那么为什么每个设备上的布局显示方式不同?

我已经在布局文件夹中,并没有其他分辨率的其他布局.

这是屏幕:

  • 三星Galaxy S4

http://www.image-share.com/ijpg-2963-272.html

  • LG G2

http://www.image-share.com/ijpg-2963-271.html

编辑#1

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/layoutMain"
tools:mContext="com.test.app.flock.mActivity">

<ImageView
    android:id="@+id/imageViewImageBackground"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:visibility="gone" />

<View
    android:id="@+id/viewBackground"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/background01" />

<View
    android:id="@+id/viewFingerprint"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/fingerprint01"
    android:visibility="gone" />

<Button
    android:id="@+id/buttonScanning"
    android:layout_width="162dp"
    android:layout_height="130dp"
    android:layout_centerHorizontal="true"
    android:layout_alignParentBottom="true"
    android:layout_marginBottom="41dp"
    android:background="@android:color/transparent" />

<ImageView
    android:id="@+id/imageViewScanner"
    android:layout_width="162dp"
    android:layout_height="130dp"
    android:layout_centerHorizontal="true"
    android:layout_alignParentBottom="true"
    android:layout_marginBottom="41dp"
    android:src="@drawable/line01"

    android:visibility="gone" />

<TextView
    android:id="@+id/textViewResult"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:layout_centerHorizontal="true"
    android:layout_alignParentBottom="true"
    android:layout_marginBottom="180dp"

    android:text="SCANNING"
    android:textSize="30sp"
    android:textColor="@android:color/white"
    android:textStyle="bold"
    android:gravity="center"

    android:visibility="gone" />

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="55dp"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="112dp" …
Run Code Online (Sandbox Code Playgroud)

android screen-resolution android-layout screen-density

8
推荐指数
1
解决办法
817
查看次数

如何获得设备的屏幕尺寸?

欲望有480 x 800像素,3.7英寸,HD有480 x 800像素,4.3英寸屏幕规格.

我运行从此线程接受作为答案的代码如何获取设备的屏幕大小?但这是错误的!例如,对于3.7英寸的屏幕尺寸返回2.4,这是非常错误的!

有人知道如何获得真正的屏幕尺寸吗?我不需要分辨率我需要屏幕的屏幕尺寸(英寸).

注意:此代码错误(至少对我不起作用)

DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int width = dm.widthPixels; //give me 320
int height = dm.heightPixels; //give me 533
Run Code Online (Sandbox Code Playgroud)

我有HTC Desire,我的分辨率是480 x 800像素!

我知道我很蠢!,显然我做错了什么但有人可以请我如何以英寸为单位获得真正的屏幕尺寸,并获得设备的真正分辨率?

谢谢

android screen view inches screen-size

6
推荐指数
2
解决办法
2万
查看次数