回答
我认为,具体的例子是ShareActionProvider
,这是ActionProvider
如果你是一个特殊的sublcass在xml中为您的菜单添加ActionProvider
,您可以将其作为菜单项并添加图标。
从ActionProvider
文档:
<item android:id="@+id/my_menu_item"
android:title="Title"
android:icon="@drawable/my_menu_item_icon"
android:showAsAction="ifRoom"
android:actionProviderClass="foo.bar.SomeActionProvider" />
因为我没有使用过这些,我不知道不够了解,如果所有ActionProvider
■找微调角落三角...我的猜测是肯定的?
UPADTE:
我只是想着如何SpinnerAdapter
作品和有另一种方式来做到这一点。如果你在你的Spinner
使用SpinnerAdapter
自定义子类,将有2种方法,你可以做到以下几点:
@Override
public View getDropDownView(int position, View convertView, ViewGroup parent)
{
// return the view to display when you are looking at the dropdown,
// so this will probably be a TextView and/or an ImageView
}
@Override
public View getView(int position, View convertView, ViewGroup parent)
{
// This will show when the item at the provided position is
// selected. At this point you could return the ImageView you want to
// always appear at the top, such as the share icon.
}
我“解决”这个问题,黑客攻击,这是把一个ImageView
上层建筑的Spinner
。
<Spinner
android:layout_width="40dp"
android:layout_height="40dp"
/>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:scaleType="fitCenter"
android:src="@drawable/ic_share"
android:adjustViewBounds="true"
android:background="@color/same_as_parent_background"
/>
今天浪费了时间,所以我想我会提供正确的答案,即使此线程显示死亡。
首先,我曾怀疑为@乔恩这样做只是调用不可思议的神秘ActionProvider将添加微调三角代表我们。它不是。
其次,事实证明谷歌是作弊并违反了他们自己的ActionBar图标指引来实现此目的。如果您查看http://androiddrawables.com/Menu.html,您会看到共享图标专门有一个类似微调的三角形入侵到了它的角落。
基本上,这意味着您的主要假设 - 它是一个Spinner
- 是错误的。这只是一个按钮,被黑了看起来像一个微调。
所以,你可以在静脉创建自己的自定义图标,如果你想要的,只要按照平时的指令指定动作条按钮图标(http://developer.android.com/guide/topics/ui/actionbar.html#ActionItems)。如果你有像我这样的文本按钮,这是行不通的。
我最终做了什么,其中包括使用支持库中提供的一些微调背景九个补丁文件,以及添加到应用于所述按钮的样式的属性'actionBarItemBackground'。
<item name="android:actionBarItemBackground" tools:ignore="NewApi">@drawable/abc_spinner_ab_default_holo_light</item>
<item name="actionBarItemBackground">@drawable/abc_spinner_ab_default_holo_light</item>
尝试这种黑客攻击时,你会想记住ActionBar with AppCompat actionBarItemBackground not working。
- 1. Android默认微调箭头资源
- 2. 更改treeitem的默认箭头图标
- 3. 使用默认向下箭头的自定义微调器
- 4. 带文本和图标的微调框
- 5. 带文本和图标的微调框
- 6. AIX - 默认shell - 箭头键
- 7. 带箭头边框的图像按钮
- 8. 带边框的CSS箭头
- 9. Android的微调 - 改变箭头图标,但保持底部边框
- 10. 恢复默认值的箭头键
- 11. JavaFX:TableView:默认排序列的箭头
- 12. 如何设置与背景微调箭头下拉箭头?
- 13. 下拉菜单图像,而不是默认的箭头图像
- 14. 只显示微调箭头按钮
- 15. 更改ActionBar微调箭头颜色
- 16. 在Android中修改微调箭头
- 17. 无法看到微调箭头
- 18. Android微调改变箭头颜色
- 19. 微调箭头颜色没有改变
- 20. 默认为空微调器
- 21. 更改HTML“中选择”标签的默认箭头
- 22. Android - 微调箭头不显示时,背景图像视图
- 23. 如何隐藏选择框的默认箭头并设置所需的图像?
- 24. (向下)带CSS的箭头框
- 25. 带底部边框的css箭头
- 26. 如何绘制带边框的箭头?
- 27. 带下拉箭头的GWT文本框
- 28. 带有箭头的HTML div评论框
- 29. 通过bing地图滚动功能访问的默认箭头
- 30. 如何更改下拉箭头在Android中的微调控制箭头?
我更新了我的答案,以防万一对你有帮助 – Jon