【问题标题】:UIToolbar center UIBarButtonItem verticalUIToolbar center UIBarButtonItem 垂直
【发布时间】:2014-04-30 14:09:56
【问题描述】:

我正在开发一个 Monotouch 项目,我在其中设计了带有 CameraOverlayView 的 UIImagePickerController。 然后在底部我有一个 UIToolBar,在 iPhone5 上工具栏很大。这里的相机按钮是垂直居中的,但我的取消按钮不是。

我该怎么做才能使其居中? 创建它的代码是:

        mCameraToolbar = new UIToolbar();

        UIBarButtonItem cancel = new UIBarButtonItem(UIBarButtonSystemItem.Cancel);
        cancel.Clicked += delegate(object sender, EventArgs e)
        {
            mPicker.DismissViewController(true, null);
            if(mImgView.Image == null)
                NavigationController.PopViewControllerAnimated(true);
        };
        UIBarButtonItem camera = new UIBarButtonItem(UIBarButtonSystemItem.Camera);
        camera.Clicked += delegate(object sender, EventArgs e)
        {
            mPicker.TakePicture();
        };
        mCameraToolbar.SetItems(new UIBarButtonItem[]{ 
            cancel, 
            new UIBarButtonItem(UIBarButtonSystemItem.FlexibleSpace), 
            camera, 
            new UIBarButtonItem(UIBarButtonSystemItem.FlexibleSpace), 
            new UIBarButtonItem(UIBarButtonSystemItem.FlexibleSpace) 
        }, true);

【问题讨论】:

    标签: iphone xamarin.ios uitoolbar


    【解决方案1】:

    我认为这对于简单的 UIBarButtonItem 是不可能的。但是您可以尝试将视图添加为容器。像这样创建新的 UIBarButtonItem 时,您只需要传递一个 UIView:

    UIView containerView = new UIView();
    containerView.Frame = new RectangleF(0f,0f,150f,YOUR_TOOLBAR_HEIGHT);
    UIButton buttonAnuller = new UIButton();
    buttonAn.SetTitle("Annuler",UIControlState.Normal);
    buttonAn.Bounds = new RectangleF(0f,0f,150f,30f);
    buttonAn.Center=new PointF(containerView.Frame.Width/2,containerView.Frame.Height/2);
    containerView.Add(buttonAn);
    UIBarButtonItem itemWithView = new UIBarButtonItem(containerView);
    

    在这段代码中,创建了一个 containerView。之后,创建一个按钮并将其添加到 containerView。最后一步只是创建一个新的 UIBarButtonItem 容器作为参数。

    【讨论】:

      【解决方案2】:

      我建议您不要搞清楚如何驯服工具栏,而不要使用它,您可以使用内部包含两个按钮的自定义视图轻松获得该结果。

      PS:不要使用匿名代表。否则你的代码会泄漏内存。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-07-19
        • 2014-05-11
        • 2023-03-06
        • 2012-06-05
        • 1970-01-01
        • 2010-11-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多