да. Это займет немного работы, но это можно сделать следующим образом:
в SHK.m
найти этот метод
+ (NSArray *)favoriteSharersForType:(SHKShareType)type
и изменить
switch (type)
{
case SHKShareTypeURL:
favoriteSharers = [NSArray arrayWithObjects:@"SHKTwitter",@"SHKFacebook",@"SHKReadItLater",nil];
break;
case SHKShareTypeImage:
favoriteSharers = [NSArray arrayWithObjects:@"SHKTwitter",@"SHKFacebook",@"SHKReadItLater",nil];
break;
case SHKShareTypeText:
favoriteSharers = [NSArray arrayWithObjects:@"SHKTwitter",@"SHKFacebook",@"SHKReadItLater",nil];
break;
case SHKShareTypeFile:
favoriteSharers = [NSArray arrayWithObjects:@"SHKTwitter",@"SHKFacebook",@"SHKReadItLater",nil];
break;
к следующему для каждого экземпляра оператора switch
favoriteSharers = [NSArray arrayWithObjects:@"SHKFacebook", nil];
или любые другие параметры, которые вы хотите поддерживать (например, если вы хотите, чтобы твиттер и фейсбук добавляли @"SHKTwitter"
в массив)
это устранит другие параметры, но лист действий, отображающий параметры, не будет отражать изменение, и он по-прежнему будет давать дополнительный параметр, который нам также необходимо отключить.
Для этого перейдите на SHKActionSheet.m
Хотя в этом методе вы можете по желанию изменить заголовок с «Поделиться» на что-то более конкретное, т.е. «Поделиться с Facebook и Twitter». Для этого перейдите к следующему методу и внесите указанные изменения.
+ (SHKActionSheet *)actionSheetForType:(SHKShareType)type
изменять
SHKActionSheet *as = [[SHKActionSheet alloc] initWithTitle:SHKLocalizedString(@"PUT YOUR NEW TITLE HERE")
delegate:self
cancelButtonTitle:nil
destructiveButtonTitle:nil
otherButtonTitles:nil];
as.item = [[SHKItem alloc] init];
as.item.shareType = type;
затем в том же методе удалите эту строку:
// Add More button
[as addButtonWithTitle:SHKLocalizedString(@"More...")];
Причина, по которой мы должны удалить это, заключается в том, что ранее мы удалили кнопку «Дополнительно», и теперь мы должны убедиться, что код не путает никакую другую кнопку с кнопкой «Дополнительно». Кнопку «Дополнительно» пришлось удалить, потому что она показывала варианты использования других методов обмена, которые мы не хотим, чтобы пользователь использовал. Если бы мы не удалили его, пользователь все равно смог бы получить доступ к отключенному методу общего доступа.
Надеюсь это поможет.
13.03.2011