सबसे पहले, फ़ाइलें बनाएं। मैं नाम मेरा ActivityViewCustomActivity करने के लिए चुना
मेक इस तरह दिखना ActivityViewCustomActivity.h: यहाँ:
#import "ActivityViewCustomActivity.h"
@implementation ActivityViewCustomActivity
- (NSString *)activityType
{
return @"yourappname.Review.App";
}
- (NSString *)activityTitle
{
return @"Review App";
}
- (UIImage *)activityImage
{
// Note: These images need to have a transparent background and I recommend these sizes:
// [email protected] should be 126 px, iPadShare should be 53 px, [email protected] should be 100
// px, and iPhoneShare should be 50 px. I found these sizes to work for what I was making.
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
return [UIImage imageNamed:@"iPadShare.png"];
}
else
{
return [UIImage imageNamed:@"iPhoneShare.png"];
}
}
- (BOOL)canPerformWithActivityItems:(NSArray *)activityItems
{
NSLog(@"%s", __FUNCTION__);
return YES;
}
- (void)prepareWithActivityItems:(NSArray *)activityItems
{
NSLog(@"%s",__FUNCTION__);
}
- (UIViewController *)activityViewController
{
NSLog(@"%s",__FUNCTION__);
return nil;
}
- (void)performActivity
{
// This is where you can do anything you want, and is the whole reason for creating a custom
// UIActivity
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=yourappid"]];
[self activityDidFinish:YES];
}
@end
यह वही मेरी छवि की तरह दिखाई देता है:
#import <UIKit/UIKit.h>
@interface ActivityViewCustomActivity : UIActivity
@end
ActivityViewCustomActivity.m इस तरह बनाएं .PSD मैंने बनाया है: - दुर्भावनापूर्ण लिंक हटा दिया गया - और यहां मूल 250 पीएक्स है .png http://i.imgur.com/pGWVj.png
अब आपके विचार नियंत्रक में ऐसा करते हैं:
#import "ActivityViewCustomActivity.h"
और अब भी आप प्रदर्शित करने के लिए अपने UIActivityViewController
हैं:
NSString *textItem = @"Check out the yourAppNameHere app: itunes http link to your app here";
UIImage *imageToShare = [UIImage imageNamed:@"anyImage.png"];
NSArray *items = [NSArray arrayWithObjects:textItem,imageToShare,nil];
ActivityViewCustomActivity *aVCA = [[ActivityViewCustomActivity alloc]init];
UIActivityViewController *activityVC =
[[UIActivityViewController alloc] initWithActivityItems:items
applicationActivities:[NSArray arrayWithObject:aVCA]];
activityVC.excludedActivityTypes = @[UIActivityTypePostToWeibo, UIActivityTypeAssignToContact, UIActivityTypePrint, UIActivityTypeCopyToPasteboard, UIActivityTypeSaveToCameraRoll];
activityVC.completionHandler = ^(NSString *activityType, BOOL completed)
{
NSLog(@"ActivityType: %@", activityType);
NSLog(@"Completed: %i", completed);
};
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
self.popoverController = [[UIPopoverController alloc] initWithContentViewController:activityVC];
CGRect rect = [[UIScreen mainScreen] bounds];
[self.popoverController
presentPopoverFromRect:rect inView:self.view
permittedArrowDirections:0
animated:YES];
}
else
{
[self presentViewController:activityVC animated:YES completion:nil];
}
महान काम करता है! धन्यवाद। – OscarTheGrouch
आईफोन और आईपॉड टच के लिए ऐप्पल मैनुअल के मुताबिक, छवियों 43 से 43 अंकों से बड़ी नहीं होनी चाहिए (जो रेटिना डिस्प्ले वाले उपकरणों के लिए 86 पिक्सेल से 86 के बराबर होती है।) आईपैड के लिए, छवियों को 55 x 55 अंक से बड़ा नहीं होना चाहिए (जो रेटिना डिस्प्ले के साथ आईपैड के लिए 110 से 110 पिक्सल के बराबर होना चाहिए।) – voromax
ऐप्पल मैनुअल सबकुछ के लिए काम नहीं करता है। मेरे द्वारा चुने गए छवि आकार परीक्षण और त्रुटि से थे, और जो मुझे चाहिए उसके लिए पूरी तरह से काम करते थे। – klcjr89