本章的内容涉及到的了两个知识点:
PopupWindow:关于这方面的内容可以看看《使用PopupWindow创建一个简单的菜单》
使用TabHost创建标签:这个网上好多教程随便看看就好。
实现思路:
观察一下UC浏览器的菜单我们可以发现,UC的菜单就是一个个标签页显示在了PopupWindow上,所以可以想到使用PopupWindow+TabHost来实现类似的效果。这样做,在标签页中我们可以使用android提供布局对象随意设置布局。
下面来看代码:
想要实现这种效果的菜单,默认的PopupWindow明显需要重写:
public class MyMenu extends PopupWindow {
private TabHost tabHost; //标签页窗口
private LayoutInflater inflater; //用于加载tabhost
private View layout;
private Context context;
//构造函数
public MyMenu(Context context, int width, int height) {
super(context);
this.context = context;
inflater = LayoutInflater.from(this.context);
//创建标签页
initTab();
//设置默认选项
setWi