-1

tl; dr:我正在创建一个 UIImageView,它与发件人具有相同的图像。我试图弄清楚如何去做。

我试图获取发件人图像。这是我获取发件人的代码:

UIButton *playSelectionTag = (UIButton *)sender;



 if (playSelectionTag.tag == 5) {

    /*
    [popInToolbar release];

    [all release];
    [world release];
    [politics release];
    [TVMovies release];
    [aboutText release];
    [aboutTrueFalse release];
    [scoreText release];

    [spaceBar release];
    [done release];
    */

    popUpPlay = [[UIImageView alloc]init];

    popUpPlay.frame = CGRectMake(playSelectionTag.frame.origin.x, playSelectionTag.frame.origin.x, playSelectionTag.frame.size.width, playSelectionTag.frame.size.height);

    [popUpPlay setImage:[UIImage imageNamed:[NSString stringWithFormat:@"%@", playSelectionTag.imageView.image]]];

    }
4

2 回答 2

2

代替:

[popUpPlay setImage:[UIImage imageNamed:[NSString stringWithFormat:@"%@", playSelectionTag.imageView.image]]];

和:

popUpPlay.image = [playSelectionTag imageForState:UIControlStateNormal];

您接受的解决方案将为您提供处于突出显示状态的发件人图像。

于 2011-09-05T08:10:21.890 回答
1

UIButton 的 imageView 是 UIImageView。UIImageView 中的图像是 UIImage。所以将它转换成字符串是行不通的。

一种可能的方法是使用 [[UIImage alloc] initWithCGImage: [playSelectionTag.imageView.image CGImage]]

如果它不起作用,请尝试以下操作。

跟踪您在按钮中使用的图像。您可以通过保持图像数组并将图像名称存储在与 playSelectionTag.tag 相同的索引处来实现此目的。

于 2011-09-05T07:59:48.937 回答