Android Studio не может открыть проект Android с Kotlin DSL

Использовать протокол UIAppearance. Пример установки шрифта - создать категорию для расширения UILabel:

@interface UILabel (FontAppearance)
@property (nonatomic, copy) UIFont * appearanceFont UI_APPEARANCE_SELECTOR;
@end


@implementation UILabel (FontAppearance)

-(void)setAppearanceFont:(UIFont *)font {
    if (font)
        [self setFont:font];
}

-(UIFont *)appearanceFont {
    return self.font;
}

@end

И ее использование:

UILabel * appearanceLabel = [UILabel appearanceWhenContainedIn:UIAlertController.class, nil];
[appearanceLabel setAppearanceFont:[UIFont boldSystemFontOfSize:10]]; //for example

Протестировано и работает со стилем UIAlertControllerStyleActionSheet, но я предположим, что он будет работать и с UIAlertControllerStyleAlert.

PS Лучше проверить наличие класса вместо версии iOS:

if ([UIAlertController class]) {
    // UIAlertController code (iOS 8)
} else {
    // UIAlertView code (pre iOS 8)
}
5
задан david.mihola 17 January 2019 в 07:54
поделиться

2 ответа

Мне удалось «починить» его, удалив каталог .idea и снова открыв проект. Каталог .idea обычно не фиксируется в git, но я полагаю, что копирование каталога делает недействительными структуры каталогов в файлах в каталоге .idea.

Вся ошибка легко воспроизводится, когда вы нажимаете File> Re-import Gradle project.

0
ответ дан Boni2k 17 January 2019 в 07:54
поделиться

@ Ответ Boni2k не работает для меня.

Мне нужно переименовать корень build.gradle.kts обратно в build.gradle, исправить синтаксическую ошибку, синхронизировать проект (который сразу работает нормально) и переименовать файл обратно в build.gradle.kts. Тогда ошибка исчезнет, ​​и я смогу успешно синхронизировать проект.

Что я сделал, чтобы поднять ошибку, так это то, что я переместил проект в другую папку и переименовал проект.

0
ответ дан Col 17 January 2019 в 07:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: