2014-09-23 6 views
30

Когда я создаю iOS 8 Today Extension, слева от 48px есть пустое пространство, даже если в Interface Builder я помещаю ярлык с левой стороны в x = 0.Fit width in iOS 8 Today Extensions


on xcode on the simulator


Я видел, что некоторые приложения, однако, использовать полную ширину виджета.


other apps


Как я могу достичь чего-то подобное?

Спасибо!


UPDATE: решаемые

Я ставлю здесь пример кода, потому что я предполагаю, что это будет полезно для кого-то. Как было предложено @ Маттео-lallone, правильный способ сделать это:

-(UIEdgeInsets)widgetMarginInsetsForProposedMarginInsets:(UIEdgeInsets)defaultMa‌​rginInsets{ 
return UIEdgeInsetsZero; 
} 

ответ

37

Прямо с Документов

Сегодня виджет создан с помощью шаблона Xcode Сегодня включает в себя Авто макета ограничений для стандарта полевые вставки. Чтобы получить значения вставки для ваших расчетов, используйте метод widgetMarginInsetsForProposedMarginInsets: .

Источник: App Extension Programming Guide - Today

+5

Спасибо, как вы сказали, я добавил этот код, и проблема была решена! - (UIEdgeInsets) widgetMarginInsetsForProposedMarginInsets: (UIEdgeInsets) defaultMarginInsets {return UIEdgeInsetsZero;} –

+1

Ваша ссылка мертва. Возьмите этот файл [NotificationCenter.html] (https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/NotificationCenter.html#//apple_ref/doc/uid/TP40014214-CH11-SW5) – Felix

+0

Спасибо @Felix, это было прекрасно, когда я опубликовал его! Обновлено. –

23

Я могу дополнить быструю версию

func widgetMarginInsetsForProposedMarginInsets(defaultMarginInsets: UIEdgeInsets) -> UIEdgeInsets { 
    return UIEdgeInsetsZero 
} 

для ос

-(UIEdgeInsets)widgetMarginInsetsForProposedMarginInsets:(UIEdgeInsets)defaultMarginInsets { 
    return UIEdgeInsetsZero 
} 

надеюсь, что это может помочь кому-то.

+0

Это очень полезно, спасибо. – whenov

+0

это решило это для меня. – DeyaEldeen

 Смежные вопросы

  • Нет связанных вопросов^_^