0

我正在研究一些开源代码,目前正在转换 DTMF 音调,然后将它们显示为UIImageview. 但是,我们确实需要一种方法来改变这一点,因此每个 ImageView 的内容都被替换UILabel为生成的输出是字符串而不是图像。我希望这是有道理的:

这是负责此任务的原始代码:

- (void)setLCDString:(char*)content {

if (strlen(content) > LCD_COLS) {

    content = content + (strlen(content)-LCD_COLS);
}
//NSLog(@"LCDString %d len",strlen(content));

UIImageView *disp[LCD_COLS] = {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o};

for (int in = 0; in < LCD_COLS; in++) {

//Here we start at 0, and if our INT is less than 24 (6x4) then we increase INT by 1.

    [disp[in] setImage:[self charToImage:*content]];

//Here we set UIImageVIew to our INT, and convert Character to images.

    if (*content) content++;
  }
}


- (UIImage *)charToImage:(char) chr
{

if (isdigit(chr) || (chr == 'A') || (chr == 'B') || (chr == 'C') || (chr == 'D')
        || (chr == '*') || (chr == '#')) {

    char name[10];

    snprintf(name,10,"%c.png",chr);;

    UIImage *img = [UIImage imageNamed:[NSString stringWithCString:name encoding:NSASCIIStringEncoding]];

    return img;
}

return nil;
}

在这里您可以看到,解码正在将字符串转换为单个图像中的图像UIImageView,但我们需要将其替换为UILabel文本。

如果有人能指出我们正确的方向,将不胜感激。

4

0 回答 0