Iphone 文本字段值问题

Iphone 文本字段值问题,iphone,objective-c,ios,Iphone,Objective C,Ios,使用下面的代码,但我没有得到文本字段中结果的值。。。有什么帮助吗 -(IBAction) scanButtonTapped:(id)sender { int button = [sender tag]; if (button == 1) { NSLog(@"ID Button Pressed"); deviceID.text = result; } else if (button == 2){ NSLog(@"Ke

使用下面的代码,但我没有得到文本字段中结果的值。。。有什么帮助吗

-(IBAction) scanButtonTapped:(id)sender
{
    int button = [sender tag];

    if (button == 1) {
        NSLog(@"ID Button Pressed");
        deviceID.text = result;
    }
    else if (button == 2){
        NSLog(@"Key button Pressed");
        deviceKey.text = result;
    }

    NSLog(@"TBD: scan barcode here...");

    // ADD: present a barcode reader that scans from the camera feed
    ZBarReaderViewController *reader = [ZBarReaderViewController new];
    reader.readerDelegate = self;
    reader.supportedOrientationsMask = ZBarOrientationMaskAll;

    ZBarImageScanner *scanner = reader.scanner;
    // TODO: (optional) additional reader configuration here

    // EXAMPLE: disable rarely used I2/5 to improve performance
    [scanner setSymbology: ZBAR_I25 config: ZBAR_CFG_ENABLE to: 0];

    // present and release the controller
    [self presentModalViewController: reader animated: YES];

    [reader release];
}

-(void) imagePickerController: (UIImagePickerController*) reader didFinishPickingMediaWithInfo: (NSDictionary*) info
{
    // ADD: get the decode results

    id<NSFastEnumeration> results =
    [info objectForKey: ZBarReaderControllerResults];
    ZBarSymbol *symbol = nil;
    for(symbol in results)
        // EXAMPLE: just grab the first barcode
        break;

    // EXAMPLE: do something useful with the barcode data


    result = symbol.data;

    NSLog(@"result = %@",result);

    // EXAMPLE: do something useful with the barcode image
    resultImage.image =
    [info objectForKey: UIImagePickerControllerOriginalImage];

    // ADD: dismiss the controller (NB dismiss from the *reader*!)
    [reader dismissModalViewControllerAnimated: YES];    
}
-(iAction)扫描按钮已标记:(id)发送方
{
int按钮=[发送者标签];
如果(按钮==1){
NSLog(@“按下ID按钮”);
deviceID.text=结果;
}
否则如果(按钮==2){
NSLog(@“按键按下”);
deviceKey.text=结果;
}
NSLog(@“待定:在此扫描条形码…”);
//添加:提供一个条形码读取器,可从摄像头提要进行扫描
ZBarReaderViewController*读卡器=[ZBarReaderViewController新建];
reader.readerDelegate=self;
reader.supportedOrientationMask=zBaroOrientationMaskall;
ZBarImageScanner*scanner=reader.scanner;
//TODO:(可选)此处的附加读卡器配置
//示例:禁用很少使用的I2/5以提高性能
[扫描仪设置符号:ZBAR_I25配置:ZBAR_CFG_启用:0];
//显示并释放控制器
[自我呈现Modalviewcontroller:reader动画:是];
[读者发布];
}
-(void)imagePickerController:(UIImagePickerController*)读卡器已使用信息完成PickingMediaWithInfo:(NSDictionary*)信息
{
//添加:获取解码结果
id结果=
[信息对象forkey:ZBarReaderControllerResults];
ZBarSymbol*符号=nil;
用于(结果中的符号)
//示例:只需抓取第一个条形码
打破
//示例:对条形码数据执行一些有用的操作
结果=symbol.data;
NSLog(@“结果=%@”,结果);
//示例:对条形码图像执行一些有用的操作
结果图像=
[info objectForKey:UIImagePickerControllerOriginalImage];
//添加:关闭控制器(注意从*读卡器*!)
[reader dismissModalViewControllerAnimated:是];
}

假设
结果
正确且等于
符号。数据
,您应该能够使用以下方法设置文本:

[deviceID setText: result];


考虑到
symbol.data
是一个NSString对象。如果这不起作用,则说明您的插座在Interface Builder中未正确连接(设备ID和/或设备密钥插座)。

而不是按照下面的行

result = symbol.data;
使用以下命令

if( result )
  [result release];

result = [symbol.data retain];

第一个函数中的
deviceID
deviceKey
文本字段吗?是的,我指的是deviceID和deviceKey文本字段您是否连接了正确的插座?
NSLog
是否打印正确的值?我在result=symbol.data中正确获取了值;但是如何将此值分配给相对的textfield在结果中获取该值,但在deviceID textfield中未显示该值,但在deviceKey中显示该值似乎是一个插座连接问题,如果它将在其中一个中显示,而不是在另一个中显示。已检查,其连接正确,
if( result )
  [result release];

result = [symbol.data retain];