Android 在高分辨率屏幕中处理1dp线路。。?

Android 在高分辨率屏幕中处理1dp线路。。?,android,android-layout,Android,Android Layout,我在每个表格行之间有一条1dp线,我可以在低分辨率屏幕上看到这些线。但是如果我在nexus 4中看到相同的东西,那么这些线是不可见的,我如何使这些1dp线在高分辨率屏幕中可见,以便我的设计在所有分辨率下都是相同的 Display display = getWindowManager().getDefaultDisplay(); int ScreenHeight = display.getHeight(); int ScreenWidth = display.getWidth(); View v

我在每个表格行之间有一条1dp线,我可以在低分辨率屏幕上看到这些线。但是如果我在nexus 4中看到相同的东西,那么这些线是不可见的,我如何使这些1dp线在高分辨率屏幕中可见,以便我的设计在所有分辨率下都是相同的

Display display = getWindowManager().getDefaultDisplay();
int ScreenHeight = display.getHeight();
int ScreenWidth = display.getWidth();

View view = (View) findViewById(R.id.view);
LayoutParams paramsView = new LayoutParams((int)(ScreenWidth * .01), LayoutParams.FILL_PARENT);
view.setLayoutParams(paramsView);

它会将您的视图宽度设置为屏幕宽度的1%。。。您可以根据需要增加百分比或使用屏幕高度变量

我知道这个问题已经有一段时间了,但有几种方法可以做到这一点:

1) 在dimens.xml中的1dp处创建维度条目:


现在已经很晚了,但这可能会对未来的某些人有所帮助

dp代表独立于设备的像素,因此这条线应该独立于分辨率而可见。我可以在480x800、三星S2中看到这条线,但在nexus 4try中看不到这条线以增加线的高度。并检查是否可以看到。所有屏幕上的1dp应为1dp。。正如Ridcully所说的
<dimen name="oneDP">1dp</dimen>
DisplayMetrics metrics = new DisplayMetrics();
activity.getWindowManager().getDefaultDisplay().getMetrics(metrics);
float scaleFactor = metrics.density;