是的。这将需要一些工作,但它可以做到如下:
在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];
或你想要支持的其他选项(即if你只希望Twitter和Facebook添加@"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...")];
我们为什么要删除这是因为早期我们去掉了更多的按钮的原因,现在我们必须确保代码不会将任何其他按钮与更多按钮混淆。更多的按钮必须被删除,因为它显示了使用其他共享方法的选项,我们不希望用户使用。如果我们没有删除它,用户仍然可以访问禁用的共享方法。
希望这会有所帮助。
感谢您的回复,但我已经做到了。你误解我了。我不想在UIActionSheet中显示我的共享者(脸部,推特,电子邮件)。我想在我的smallView中显示它。我把3个按钮放在脸上,推特和电子邮件。我希望我现在清醒。 – kodcu 2011-03-13 20:02:04
哦,对不起。我误解了。我不确定我是否可以帮助你解决你的问题,但如果我知道了,我会编辑我的答案。 – Andrew 2011-03-14 01:12:42
我想通了。您是否希望我发布另一个回复,或者您是否已经找到答案 – Andrew 2011-03-20 21:06:34