1

我试图从 UITabBar 实现我自己的弹出菜单。我的应用程序允许用户指定在标签栏上显示哪些菜单,我不喜欢 iOS 在标签栏项目很多时使用的默认“更多”按钮,所以我想创建一些标签栏项目是“子菜单”,可以提供更多按钮的菜单。我希望它从 tabbaritem 本身弹出,并且每个用户的选项卡顺序可能不一样。到目前为止,我可以找到用户选择的 tabbaritem,但接下来我需要知道它的位置,以便我可以从该位置为弹出菜单设置动画。

有谁知道我如何才能找到所选 tabbaritem 的框架或位置?

4

1 回答 1

0

您可以遍历您的子视图UITabBar并仅获取属于一类类型的子视图UITabBarButton。然后你得到你感兴趣的子视图的框架。

List<RectangleF> tabBarButtonFrames = new List<RectangleF>();

foreach (var view in this.tabBarController.TabBar.Subviews) {
    if (view.ToString().Contains("UITabBarButton")) {
        tabBarButtonFrames.Add(view.Frame);
    }

    Console.WriteLine(view.ToString() + "\t" + view.Frame.ToString());
}

注意:此链接包含更多从poupou获取 Objective-C 类名的方法

于 2013-06-24T11:27:34.387 回答