0

我正在为三个不同的社团构建一个应用程序。该集团的每个社团都有自己的网站,是其他网站的克隆,徽标和域除外。因此,例如,我有:

logoA.jpeg

logoB.jpeg

logoC.jpeg

对于社会。A、B 和 C。

http://socA.it /homepage/default.aspx _

http://socB.it /homepage/default.aspx _

http://socC.it /homepage/default.aspx _

用于主页链接等。站点的布局完全相同。

我对我的应用程序要做的是从网站的页面中检索数据。在我的应用程序的启动活动中,注册用户可以选择在哪个站点登录和工作。一旦他登录,他就可以从他选择的网站/社会中获取他需要的信息,这些信息会包含在我的应用程序中。

我显然构建了一个应用程序来从所有站点检索数据,但我正在寻找一种优雅(当然也是正确)的方式来处理不同的域/徽标。作为关注域,我将用户在登录时选择的域保存在用户首选项中,并在需要时将其检索为 base_url(域)。

问题是:如何处理徽标?我有三个可以显示的不同徽标,并且我在 drawable* 文件夹中为每个分辨率都有一个副本。我认为我可以做的是在每个活动的每个 onCreate 事件中添加一个 if 语句,以检查用户偏好并显示正确的徽标(或使用在其他地方创建的方法 getMyLogo()),但这很无聊.. 可能是最好为每种情况创建一个自定义可绘制文件夹以处理所有不同的场景:

drawable drawable-A-ldpi drawable-A-mdpi drawable-A-hdpi drawable-B.ldpi ... ?

任何建议表示赞赏。

4

1 回答 1

0

据我所知,这是不可能的,最干净的方法是在 SocietyHelper 的行中有一个名为 something 的类,并使用 getLogo() 和 getUrl() 的静态方法。唯一不“干净”的是您不能在 xml 中定义徽标。如果您的徽标始终位于图像视图中,您可以创建一个 ImageView 子类,可能称为 LogoImageView,它实际上只是使用正确的徽标初始化 ImageView。

于 2012-04-11T08:25:22.867 回答