iOS 5, не могу установить высоту NC виджета UIView - PullRequest
0 голосов
/ 01 августа 2011

Я создаю NC Widget и не могу настроить высоту виджета.

Вот мой код:

-(UIView *)view {
if (_view == nil)
{
    CGRect frame = CGRectMake(2,0,316,191); // Added
    _view = [[[UIView alloc] initWithFrame:(frame)] autorelease]; //(2., 0., 316., 71.)]; <--ORIGINAL VALUE

    // Setting frame Height dont work... :/

    UIImage *bg = [[UIImage imageWithContentsOfFile:@"/System/Library/WeeAppPlugins/SMSWidget.bundle/Background.png"] stretchableImageWithLeftCapWidth:5 topCapHeight:71];
    UIImageView *bgView = [[UIImageView alloc] initWithImage:bg];
    bgView.frame = CGRectMake(0, 0, 316, 191);
    [_view addSubview:bgView];
    [bgView release];

}

1 Ответ

1 голос
/ 10 февраля 2012

Это пример того, как вы можете это сделать:

float myWidgetHeigth = 500 ; // The desired height
_view = [[UIView alloc] initWithFrame:CGRectMake(2, 0, 316, myWidgetHeigth)];

UIImage *bg = [[UIImage imageWithContentsOfFile:@"/System/Library/WeeAppPlugins/WorldClockNC.bundle/WeeAppBackground.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(5, 5, 5, 5)];
UIImageView bgview = [[UIImageView alloc] initWithImage:bg];
bgview.frame = CGRectMake(0, 0, 316, myWidgetHeigth);
[_view addSubview:bgview];

Если вы разрабатываете плагин для Центра уведомлений, обратитесь к BBWeeAppController-Protocol.h, вам также потребуется реализовать этот метод: "- (float) viewHeight".

Кроме того, я видел из вашего кода, что вы используете эти методы "stretchableImageWithLeftCapWidth: 5 topCapHeight: 71", которые не рекомендуются в IOS 5.0 -> https://developer.apple.com/library/ios/#documentation/uikit/reference/UIImage_Class/DeprecationAppendix/AppendixADeprecatedAPI.html#//apple_ref/occ/instm/UIImage/stretchableImageWithLeftCapWidth:topCapHeight: Итак, используйте метод "resizableImageWithCapInsets"; -).

Я не профессионал, я изучаю ObjC, поэтому, если у вас есть вопросы, дайте мне знать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...