Бросьте экземпляр класса к @protocol в Objective C

Попробуйте добавить vectorDrawables.useSupportLibrary = true в свой выпускной и

static { AppCompatDelegate.setCompatVectorFromResourcesEnabled(true); }

к своей деятельности.

См. Ресурсы $ NotFoundException

.

95
задан Ford 18 April 2010 в 02:38
поделиться

1 ответ

Можно бросить его как это:

if([self.myViewController conformsToProtocol:@protocol(MyProtocol)])
{
    id<MyProtocol> p = (id<MyProtocol>)self.myViewController;
    [p protocolMethod];
}

Это бросило меня некоторое время, также. В Objective C протокол не является самим типом, таким образом, необходимо определить id (или некоторый другой тип, такой как NSObject) наряду с протоколом, который Вы хотите.

59
ответ дан Andy 24 November 2019 в 05:47
поделиться
Другие вопросы по тегам:

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