不同屏幕尺寸的自定义视图

时间:2011-08-29 05:54:14

标签: android android-custom-view

我有一个自定义视图,DateView(扩展LinearLayout),当给出日期时,会显示它。问题在于屏幕的大小,我希望DateView small,normal,large和xlarge 屏幕上以不同方式显示日期。扩展DateView的{​​{1}}非常有用,因为我可以在任何时候实例化LinearLayoutDateView

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

哇!我问过这个古老的问题。无论如何,这就是我解决问题的方法。

有两种方法(我已经开始喜欢)来解决这个问题

  1. 为多种屏幕尺寸创建多个布局。在运行时,将布局加载到DateView中,类似于FrameLayout。从布局中查找视图并填充内容。
  2. 使用Java委派模式:为多种屏幕尺寸创建多个布局。 include客户端XML布局中的模式。在客户端类中,加载include ded布局并将其传递给DateViewManager类,该类公开内容修改方法。
  3. 我更喜欢第二种方法,因为它更简洁,更简单地实现目标:使用Android资源管理功能提供多种屏幕类型。