Android应用中的响应式设计

Android应用中的响应式设计,android,Android,我正在开发一个Android应用程序。此应用程序必须在所有Android设备上可用。但我怎样才能进行响应性设计呢?例如,我想设置一个背景图像,但图像将调整到不同的分辨率,这是一个混乱 在Google上搜索时,我发现了以下解决方案: Configuration config = getResources().getConfiguration(); if(config.smallestScreenWidthDp >= 600){ setContentView(R.layout.act

我正在开发一个Android应用程序。此应用程序必须在所有Android设备上可用。但我怎样才能进行响应性设计呢?例如,我想设置一个背景图像,但图像将调整到不同的分辨率,这是一个混乱

在Google上搜索时,我发现了以下解决方案:

Configuration config = getResources().getConfiguration();
if(config.smallestScreenWidthDp >= 600){
     setContentView(R.layout.activity_main_tablet);
}else{
         setContentView(R.layout.activity_main);
}
这真的是为所有设备开发Android应用程序的唯一方法吗?我必须为每个设备创建一个活动和不同的图像?有十多种不同的决议


谢谢

如果您想在每个设备上获得响应性的布局结果,最好的方法是使用RelativeLayout,并根据按钮等子视图,您应该使用“match_patent”或旧SDK版本中的“film_patent”属性

链接此处:

图像呢

Android开发者说明说有四个可绘制的资源文件夹(mdpi、hdpi、xhdpi和xxhdpi),您应该在其中放置具有适当大小和密度的早期准备的图像

链接此处:

我用另一种方式申请。在我的应用程序中,每个类似子视图的按钮都有相对布局,并带有match_parent属性。 参考图片,我们准备的图像为高清分辨率,240dpi,每个设备上的应用程序看起来都很不错(三星trend lite,Nexus 5)


因此,老实说,如果你打算为手持设备开发应用程序,最好的方法是准备两张图像(高清和全高清),但这只是我的建议;)

谢谢,我会照你说的做,但是背景图像呢?背景会自动调整大小,因此取决于背景图像将变形的设备分辨率。我该如何解决这个问题呢?没错,背景图像也可以在不同的设备上调整大小。我对背景图像也做了同样的处理。在小分辨率设备和高清设备上,我准备了一张高清图像,在全高清设备上准备了另一张。但我还在每台设备上测试了一张高清图像(240dpi),结果非常好。这取决于你对应用程序设计的关注程度(对于游戏来说,准备一些图片是很好的,但是对于普通的应用程序,你可以试试我的解决方案,它对我有用。)