Форум программистов, компьютерный форум CyberForum.ru

Спрятать вьюшку - Objective-C

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Objective-C Вертикальный список вьюх разной высоты http://www.cyberforum.ru/objective-c/thread1578784.html
Привет, Вобще вопрос по OS X, но не нашел раздела. Извините. Нужно сделать динамический (генерится програмно) вертикальный список из вьюх содержищих NSCollectionView разной высоты. Пробовал сделать используя стэк и таблицы. Не получается. В последнем варианте с таблицами при ресайзе окна по ширине в содержимом коллекции появляется вертикальный скроллер, а высота яцейки таблицы не меняется,...
Objective-C О написании чистого кода Вообщем, такая проблема. Мне не нравится подобные нагромождения из if-ов, добавления и удаления оверлеев, бесконечных диалоговых окон: UIView *overlay = initWithFrame:self.view.frame]; overlay.backgroundColor = ; overlay.userInteractionEnabled = YES; ; UIActivityIndicatorView *activity = initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge]; ... http://www.cyberforum.ru/objective-c/thread1578148.html
Objective-C Facebook api xcode 6.3
Делаю как все описанно в документации. Редактирую info.plist , импортирую <FBSDKCoreKit/FBSDKCoreKit.h> и <FBSDKLoginKit/FBSDKLoginKit.h>, если запустить, то все работает, а если начать прописывать методы , к примеру FBSDKLoginButton *loginButton = init]; , то выдает ошибку: "clang: error: linker command failed with exit code 1 (use -v to see invocation)" ,подскажите пожалуйсто, что делаю не так)
Парсинг JSON из локального файла Objective-C
Доброго времени суток! У меня есть локальный JSON файл в проекте и мне надо из него достать данные. но почему-то, когда я пытаюсь вывести эти данные в консоль у меня пишет "(null)" в консоли, вместо отображения данных :( Выручите пожалуйста! {"cities":} Вот код Objective-C NSString *filePath = pathForResource:@"citiesJSON" ofType:@"json"]; NSString *myJSON = ...
Objective-C Системные настройки звука http://www.cyberforum.ru/objective-c/thread1568998.html
Доброго времени, кто может помочь. Нужно в osx, из приложения изменить звук уведомления, может сто подсказать?
Objective-C Отслеживание мыши по экрану Доброго дня, есть еще одно. Как можно поймать координаты мыши относительно всего экрана? Добавлено через 49 минут Решение, кому надо ; подробнее

Показать сообщение отдельно
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1

Спрятать вьюшку - Objective-C

13.11.2015, 16:01. Просмотров 386. Ответов 0
Метки (Все метки)

Здравствуйте. Как можно спрятать вьюшку совсем т.е. не просто убрать ее видимость но и освободить занимаемое ей место (аналог view.setVisibility(View.GONE); из андроид)? Пробовал так
Objective-C
1
self.frame = CGRectMake(self.frame.origin.x, self.frame.origin.y, 0, 0);
Но не работает - так и висит.

Добавлено через 1 час 44 минуты
Дело было в autoLayout, решил с помощью категории к UIView

UIView+Visibility.h
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
 
@interface UIView (Visibility)
 
typedef enum {
    VISIBILITY_VISIBLE,
    VISIBILITY_INVISIBLE,
    VISIBILITY_GONE
} ViewVisibility;
 
- (void)setVisibility:(ViewVisibility)visibility;
 
@end


UIView+Visibility.m
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#import "UIView+Visibility.h"
 
NSLayoutConstraint *heightConstraint;
NSLayoutConstraint *widthConstraint;
 
@implementation UIView (Visibility)
 
- (void) setVisibility: (ViewVisibility) visibility{
    switch (visibility){
        case VISIBILITY_GONE:
            [self setNullSize];
            [self setHidden:YES];
            break;
        case VISIBILITY_INVISIBLE:
            [self setNormalSize];
            [self setHidden:YES];
            break;
        case VISIBILITY_VISIBLE:
            [self setNormalSize];
            [self setHidden:NO];
        }
}
 
- (void) setNullSize{
    heightConstraint = [NSLayoutConstraint constraintWithItem:self
                                                          attribute:NSLayoutAttributeHeight
                                                          relatedBy:NSLayoutRelationEqual
                                                             toItem:self
                                                          attribute:NSLayoutAttributeHeight
                                                         multiplier:0
                                                           constant:0];
    widthConstraint = [NSLayoutConstraint constraintWithItem:self
                                                                        attribute:NSLayoutAttributeWidth
                                                                        relatedBy:NSLayoutRelationEqual
                                                                           toItem:self
                                                                        attribute:NSLayoutAttributeWidth
                                                                       multiplier:0
                                                                         constant:0];
    [self addConstraint:heightConstraint];
    [self addConstraint:widthConstraint];
}
 
- (void) setNormalSize{
    [self removeConstraint:heightConstraint];
    [self removeConstraint:widthConstraint];
}
 
@end


Используется так
Objective-C
1
[view setVisibility:VISIBILITY_GONE];
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru