首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >设置安卓背景和持久性菜单栏-在旧版本中使用属性会导致崩溃-是否有主题/pattern方法?

设置安卓背景和持久性菜单栏-在旧版本中使用属性会导致崩溃-是否有主题/pattern方法?
EN

Stack Overflow用户
提问于 2011-03-11 23:39:39
回答 1查看 8.8K关注 0票数 76

在Android3.0中,“选中”的概念可以使用“激活”的背景来呈现。当你点击一个列表片段时,你会看到一个持久的栏,为列表右侧的片段提供上下文(例如,点击Gmail中的一个文件夹会突出显示该文件夹,并打开另一个列表片段来显示该文件夹中的对话)。

例如,片段示例显示的内容如下:

代码语言:javascript
复制
setListAdapter(new ArrayAdapter<String>(getActivity(),
                    android.R.layout.simple_list_item_activated_1, Shakespeare.TITLES));

该资源(android.R.layout.simple_list_item_activated_1)是Android3.0中的新资源。使其“激活”的原因是:

代码语言:javascript
复制
android:background="?android:attr/activatedBackgroundIndicator"

该属性值是Android 3.0中的新属性,如果您尝试在Android的早期版本上使用它,据我所知,它会导致崩溃。我想为3.0/大/横向组合设置这个魔术值的背景,否则跳过它。

我可以通过拥有两个独立的布局版本来实现这一点,一个在-v11资源集中,一个在常规资源集中。这比我希望的要少一点,因为布局的大部分都是一样的,只有一个属性要么被包含要么被跳过。

我尝试使用可绘制的资源别名,这样android:background就可以引用别名,而别名将处理-v11的区别,但是<bitmap>可绘制的资源似乎不喜欢android:src="@null"

我怀疑有一种样式和主题的方法来解决这个问题,但由于我从来没有完全考虑过这些(这是我更尴尬的Android知识差距之一),我不完全确定该怎么做。

有没有人想出了一种模式,在3.0上使用“激活”,而在3.0之前的版本中跳过它,而不是单独的布局?

谢谢!

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5274982

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档