如果您将Android清单文件中的目标SDK版本设置为"3",那么大屏幕设备上的布局将只是小屏幕设备上的缩放版本.将目标SDK设置为更高的SDK后,您可以为每个屏幕密度创建单独的布局,从而提供更好的用户体验.
但是,我的布局主要由图像组成,这些图像的分辨率足够高,即使按比例放大也能在所有屏幕尺寸上显示得很好,因为它们足够大,不需要拉伸.现在,我可以更容易地创建一个小屏幕布局并将其放大,因为它在大屏幕上看起来仍然很好看.有没有什么方法可以在不回到API级别3的情况下获得该效果?
我在Android开发中遇到了一个让我烦恼的问题.我的问题是屏幕尺寸和处理.特别是我有一些图像问题.例如,我想为我在photoshop中创建的活动创建一个背景图像,我的背景图像中包含一个"HELLO"字样.但是当我把它放在drawable-xhdpi文件夹上时,它看起来很模糊而且不锋利!! 我的手机是nexus 4,根据Google文档,我创建了640 x 480大小的背景图像.
当我创建960 x 720尺寸的背景图像时,它似乎更好但不完美.在这种情况下我的图像文件大小非常高!
但这是什么标准方式?请帮我永远解决这个问题.我阅读谷歌文档,但它没有解决我的问题! http://developer.android.com/guide/practices/screens_support.html
三星Note 2和Note 3报告的屏幕桶是什么?"正常"还是"大"?
以下是两部手机的统计数据:
Model Dimensions Density Density Bucket DP Dimensions
note2 720px x 1280px 265dpi hdpi 480dp x 853dp
note3 1080px x 1920px 386dpi xhdpi 540dp x 960dp
Run Code Online (Sandbox Code Playgroud)
来自Diane Hackborn的这篇文章:
http://android-developers.blogspot.com/2011/07/new-tools-for-managing-screen-sizes.html
...说"大"屏幕至少480dp x 640dp,所以这两款手机都符合资格.我想知道的是,他们是否实际上将自己报告为具有"大"屏幕,或者他们是否自我识别为具有"正常"屏幕.
不幸的是,我没有手机,所以我不能自己测试.
android android-layout android-screen android-screen-support samsung-mobile
我一直在研究为不同屏幕尺寸,屏幕密度和方向设计布局的最佳方法,我越来越困惑.
1.设计密度与屏幕尺寸
我已阅读此链接
现在在设计姜饼应该考虑什么.每个文件夹中的布局都说LDPI, HDPI and MDPI.但这会增加整个应用程序的大小.
现在我已经不再考虑LDPI了.但现在我们也有了XHDPI and XXHDPI.那么我们如何设计所有页面并保持合理的尺寸呢?
什么应该更优先选择屏幕尺寸,密度或分辨率?
9-patch images可以使用图像.创建它们的最佳工具是什么?
2.Landscape vs Potrait.
现在在这个布局方程式中,如果我们为屏幕方向包含不同的布局,则应用程序变得越来越笨重且工作繁琐.
Creating smaller xmls and including them is one good solution但即便如此,考虑到所有不同的类型,它仍然变得单调乏味.特别适用于Android 4及更高版本,每个片段具有不同的布局,
我的问题是 - 考虑到以上所有因素,设计布局的最佳和最有效的方法是什么.
android android-manifest android-layout android-screen-support google-play
与早期的设备一样,我们可以创建3种布局: -
但是,如果我想为三星Galaxy S4开发应用程序该怎么办?是否为此特定屏幕启动了任何新配置,或者它将采用布局xlarge-layout.
对于可绘制配置,将引发相同的查询.
我没有S4可用,所以我需要在这里问一下.任何答案将不胜感激.
layout android drawable android-screen-support samsung-mobile
我已经在我的应用程序上工作了几个月了,它已经准备好发布了.我还有一件事要做,就是让它支持多个屏幕.我已多次阅读android开发人员文档,但我仍然对实现这一点的最佳方法感到困惑.
我应该为每种屏幕类型和分辨率创建多个布局文件吗?如果我这样做,那么我将不得不为每个分辨率渲染多张图片,这对于有人下载来说会很麻烦.
感谢先进的帮助!
我看了这个链接:
res/values-sw720dp/dimens.xml(800*1280)
但是当我在Neymus 7上运行我的布局 - 在Genymotion上使用API 19 800*1280时,它会使用
值,华电国际
代替
价值观sw720dp
!

我的min api是14.
为什么?
我已经为所有不同的屏幕尺寸(例如小、大、中和超大)创建了横向模式的 Android 布局资源文件,但是,当我运行该应用程序时,它在横向模式下不起作用,因为有一半的按钮,图像丢失从屏幕上。
我还在 android 清单文件中包含了以下行。
android:configChanges="orientation|screenSize|keyboardHidden"
Run Code Online (Sandbox Code Playgroud)
我已将以下内容包含在所有活动 java 文件中,但仍然无法正常工作。
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if(newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) {
Toast.makeText(getApplicationContext(), "Portrait Mode", Toast.LENGTH_SHORT).show();
}else if(newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE) {
Toast.makeText(getApplicationContext(), "Landscape Mode", Toast.LENGTH_SHORT).show();
}
Run Code Online (Sandbox Code Playgroud)
Android 确实将其切换到横向模式,但是,屏幕内的元素显示不正确。我创建了一个横向布局资源文件,但是,问题是 Android 不使用此布局,因为它在纵向和横向模式下使用相同的布局。
请建议我如何让 Android 知道何时使用横向和纵向模式。
android android-layout android-screen-support android-orientation
我有一个带有不同框的布局,每个框都包含一堆类似布局的TextView.
我希望使用TextView的自动大小功能,但每个TextView只考虑其自己的边界,并且无法在表示布局中类似元素的多个自动大小TextView上强制执行相同的大小.
理想情况下,我希望能够"链接"多个TextView对象(位于完全不同的位置),因此自动大小机制知道它们应该都具有相同的文本大小(坚持最小,因为一个文本可以更长比其他人).
我想“指导”android 如何在用户执行弹出键盘的操作时正确调整屏幕布局。
实际上,当显示键盘时,android simple 会将其绘制在屏幕最底部的项目上。尽管这是一种简单且有时正确的方法
在某些情况下,它变得非常糟糕。例如,如果输入的输入文本是屏幕最底部的项目……键盘将简单地覆盖它,用户将丢失有关他正在输入的内容的信息。
另一种情况是当键盘仅部分覆盖某些项目时,然后 android 会进入屏幕变得不稳定的疯狂状态
图像没有显示,但是当键盘弹出时,这两个部分覆盖的按钮像疯了一样闪烁
那么问题又来了……我怎么能告诉 android 它可以缩小哪些布局项目,或者简单地从屏幕上删除,以创造空间来显示键盘?
================更新==============
我认为整个键盘布局情况有 2 种可能的“最佳方案”:
1- 我想向用户显示的信息在屏幕顶部,所以我希望键盘覆盖底部
2- 我想显示的信息在底部,所以我希望键盘“推动”屏幕向上,以便用户可以像下一张照片一样看到底部的内容
理想的解决方案不是“应用程序范围”配置,因为应该逐个布局选择行为
android android-keypad android-layout android-screen-support