android - 有没有一种方法可以在运行时查询给定设备恰好正在使用哪个布局文件夹?

标签 android layout

我有一个应用程序,我有很多布局文件夹来适应各种设备,但我发现它很难调试,因为在某些情况下,由于应用程序的不同性质,在某些设备上它会由于 ID 拼写错误或布局类型不匹配而导致崩溃,但我真的很难找出错误发生在哪个特定的 XML 文件中,我能想到的唯一方法,为了简化,就是找出给定的布局文件夹设备正在寻找其布局。

有没有什么方法可以在运行时获取该信息,或者我是否需要根据设备规范来计算它是哪个文件夹?

最佳答案

我曾经遇到过类似的问题,只是创建了一个具有多种布局大小的 XML 布局,并将布局大小的名称(例如“sw720”)作为 TextView 中的文本。我把它们都放在一个实用程序库中,并有一个方法来膨胀它。然后从应用程序中确定 Android 决定为您加载的布局是微不足道的。在不同设备上进行测试以及进行方向更改时,这非常有帮助。

我做了normal/large/xlarge/sw600/sw720/w600/w720等

布局文件只是一个 TextView,除了 android:text= 值之外,所有布局文件都是相同的。创建 Android 库和制作布局文件只花了大约一个小时,因为您只编写一次布局文件,然后不断将其复制到新的布局文件夹中。我提到的方法只是一个公共(public)静态字符串,它会扩充布局并返回 TextView 的文本。

我用这个作为引用:“支持多屏”http://developer.android.com/guide/practices/screens_support.html

关于android - 有没有一种方法可以在运行时查询给定设备恰好正在使用哪个布局文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15959523/

相关文章:

android - Viewpager 与 ViewPager2 之间有什么好处或差异

JQuery - 如果存在某些其他元素,则将某些元素类更改为特定类

没有滚动条的CSS粘性页脚

html - CSS:具有灵活水平空间的文本右对齐部分

android - 如何避免在启动 Activity 时调用 onCreate()?

Android Studio 安装失败,因为设备已经有更新的版本

android - 在应用程序中使用 map 时出错 - com.google.android.gms.maps.MapFragment 无法转换为 android.support.v4.app.Fragment

layout - JGraphX 布局的进度条

css - 子 div 扩展出父 div 问题

android - 我不知道如何停止我的服务