是否可以将POPUP菜单(如Play商店)附加到适配器的每一行 到目前为止我做了什么
holder.rl_overflow.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
PopupMenu popup = new PopupMenu(context, holder.rl_overflow);
popup.getMenuInflater().inflate(R.menu.overflow, popup.getMenu());
popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
Toast.makeText(context,"You Clicked : " + item.getTitle(),Toast.LENGTH_SHORT).show();
return false;
}
});
popup.show();
}
});
但是POPUP菜单的构造函数说它可以从API 11获得。我通过developers.android.com,我发现,它可以使用SUPPORT V7库“https://developer.android.com/reference/android/support/v7/widget/PopupMenu.html”添加,但我无法使用ABS实现这一点,请帮助别人。
答案 0 :(得分:1)
如果您使用支持库,则应使用ABS 丢弃。而是将支持库导入到您的工作区中,该工作区可以在~/adt-bundle-linux-x86_64-20130729/sdk/extras/android/support/v7/appcompact
中找到,并在项目中使用。此外,请不要忘记添加support library
,可以直接点击您的项目并输入Android Tools -> Add Support Library
使用appcompact
,您必须使用ActionBarActivity
扩展您的活动类。并使用appcompact
您必须在styles
文件夹中进行更改。你可以参考this。不要忘记更新values-v11
和values-v14
文件。完成所有这些操作将使您的应用程序兼容。
P.S。如果appcompact
库中发生任何错误。不要惊慌失措地查看错误日志并打开似乎包含错误的文件。很可能你必须刷新文件,之后只需fix project properties
,错误就会消失。
希望这有帮助:)
答案 1 :(得分:1)
在ActionBarSherlock中使用此PopupMenu
。
PopupMenu
-
<item name="popupMenuStyle">@style/PopupMenu.MyAppTheme</item>
<style name="PopupMenu.MyAppTheme" parent="@style/Widget.Sherlock.ListPopupWindow">
<item name="android:popupBackground">@android:color/white</item>
</style>