有没有办法为一个
Android应用程序提供两个不同的Java代码?一个定位手机设备和另一个定位平板电脑设备.
例如,HomeActivity.java和HomeActivity-large.java之类的东西
基本上我想制作一个Android应用程序,其分辨率后具有不同的布局.
我知道我可以使用layout-large来为大型设备提供特定的布局.我不确定如何为平板电脑设置特定逻辑,为电话目标设置另一个逻辑.
我想这样做的原因是我想在屏幕上进行API调用,我不想在手机上进行.
作为一种替代方式,我曾想过使用布尔值(我不确定哪一个)来测试应用程序运行的设备类型.但我担心它会变得凌乱.
另一件事可能是创建一个包含我的应用程序的所有功能的库,然后使用该库创建两个不同的应用程序.该解决方案的问题在于某些代码将被复制.
有什么建议吗?
解决方法
选项1:
要将一个项目编译为一个或多个应用程序,您需要使用条件编译.基本上,这样的事情
要将一个项目编译为一个或多个应用程序,您需要使用条件编译.基本上,这样的事情
//#ifdef Phone // do something here //#else Tablet // do something else //#endif
见Java (Eclipse) – Conditional compilation
关于如何在Eclipse中对Android进行条件编译.
选项2:
您可以在运行时测试屏幕大小以确定要显示的UI.看到:
http://developer.android.com/guide/practices/screens_support.html
xlarge screens are at least 960dp x 720dp large screens are at least 640dp x 480dp normal screens are at least 470dp x 320dp small screens are at least 426dp x 320dp
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。