【问题标题】:Custom actions on ABPersonViewControllerPerson ViewController 上的自定义操作
【发布时间】:2023-03-09 23:20:01
【问题描述】:

我的应用程序打开了一个 ABPersonViewController,并为用户提供了编辑或选择联系人的选项。我可以轻松地允许编辑 (pvc.allowsEditing = YES),但我不知道如何添加“选择”按钮。我更愿意将它作为自定义按钮添加到 ABPersonViewController,如文本消息等默认按钮。

【问题讨论】:

  • ...但我会接受只是使用工具栏添加“选择”按钮。我能做到,不是吗? :)

标签: iphone abaddressbook


【解决方案1】:

我最终将ABPersonViewController 子类化并在UIToolbar 出现后滑动。下面是一个例子:

- (void)showToolbar
{
// build the toolbar items
UIBarButtonItem *spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
NSString* buttonTitle = NSLocalizedString(@"Select This Contact",@"button to select a contact");
UIBarButtonItem *chooseItem = [[UIBarButtonItem alloc] initWithTitle:buttonTitle
                                                               style:UIBarButtonItemStyleDone 
                                                              target:self 
                                                              action:@selector(chooseContact)];

// slide in the toolbar
self.navigationController.toolbar.barStyle = UIBarStyleDefault;
[self.navigationController setToolbarHidden:NO animated:YES];
self.navigationController.toolbar.items = [NSArray arrayWithObjects:spaceItem, chooseItem, nil];
[spaceItem release];
[chooseItem release];
}


- (void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
[self.navigationController setToolbarHidden:YES animated:animated];
}

- (void)viewDidAppear:(BOOL)animated 
{
[self showToolbar];
[super viewDidAppear:animated];
}

【讨论】:

    【解决方案2】:

    不,你不能。 Apple 将拒绝对 ABPersonContact 默认外观的任何修改。另一种方法是自定义您自己的 ViewController 并从 Contact 加载数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-23
      • 2014-10-05
      • 1970-01-01
      • 1970-01-01
      • 2017-10-15
      • 1970-01-01
      • 2022-08-07
      • 1970-01-01
      相关资源
      最近更新 更多