1

ShareKit を使用して、コメントと画像を Facebook に送信しています。(coredata/sqlite db に) ユーザー イメージが存在しない場合は、代わりにデフォルトのイメージを送信したいという点を除いて、すべて正常に動作しています。これが私のコードです。example.pngデフォルトinitWithData:entity.userImageの画像であり、ユーザーがiPhoneで追加した画像です。if else ステートメントに問題がある可能性があります。

-(IBAction) fbButton {

    SHKItem *item;
    NSURL *url = [NSURL URLWithString:@"http://itunes.apple.com/ae/artist/XXX"];
    item = [SHKItem URL:url title:[NSString stringWithFormat:@"Take a look at %@", entity.name]];
    [SHKFacebook shareItem:item];


    if (entity.image = nil) {

            UIImage *image = [UIImage imageNamed:@"example.png"];
            SHKItem *item2 = [SHKItem image:image title:nil];
            [SHKFacebook shareItem:item2];

    } else {


            UIImage *image = [[[UIImage alloc] initWithData:entity.userImage] autorelease];


            SHKItem *item2 = [SHKItem image:image title:nil];
            [SHKFacebook shareItem:item2];

    }       


    [SHK flushOfflineQueue];        

}

問題は、データベースに画像がない場合、Sharekit がアップロードにファイルが存在しなければならないという UIAlert を出すことです。データベースのレコードにイメージがない場合に備えて、常にデフォルトのイメージを提供することで、これを回避しようとしていました。

いつものように、助けてくれてありがとう

4

2 に答える 2

3

代わり if (entity.image == nil) にこれを 使用if (entity.image = nil) {

if (imageView.image == nil) {
                imageView.image = [UIImage imageNamed:@"fbicon.png"];
                SHKItem *item2 = [SHKItem image:imageView.image title:@"Hi"];
                [SHKFacebook shareItem:item2];
            }
            else {
            SHKItem *item1 = [SHKItem image:imageView.image title:@"Hi"];
            [SHKFacebook shareItem:item1];
            }
于 2011-05-12T12:37:17.850 に答える
0
UIImage *image = imageview.image
SHKItem *item;

item = [SHKItem image:image title:@"Hi"];

[NSClassFromString([NSString stringWithFormat:@"SHKFacebook"]) 
    performSelector:@selector(shareItem:) withObject:item];
于 2012-05-08T08:58:14.680 に答える