2011-08-29 58 views
1

我有一个自定义视图,DateView(它扩展了LinearLayout),当给定日期时,显示它。问题在于屏幕的大小,我希望DateView小屏幕,正常屏幕,大屏幕和xlarge屏幕上呈现不同的日期。 DateView延伸LinearLayout是有用的,因为我可以在任何时候实例化DateViewaddChild不同屏幕尺寸的自定义视图

任何想法?

回答

0

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

有两种方式(即我是来等)来解决这个问题

  1. 创建多个屏幕尺寸多种布局。在运行时,将布局加载到DateView中,这是(类似于)FrameLayout。从布局中查找视图并填充内容。
  2. 使用Java委派模式:为多个屏幕尺寸创建多个布局。 include客户端XML布局中的模式。在客户端类中,加载include ded布局并将其传递给公开内容修改方法的DateViewManager类。

我越来越喜欢第二种方法,因为它是更简洁更实现目标的方式:使用Android资源管理功能来提供多种屏幕类型。