2011-12-27 43 views
-2

使用下面的代碼,問題是我有兩個按鈕和兩個文本框,但我使用單一方法獲取qrcode值。我怎樣才能使用它的兩個文本域iPhone通過單一方法獲取兩個不同文本框的值

- (IBAction) keyScanButtonTapped 
{ 

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 

deviceKey.text = symbol.data; 

// 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]; 
} 
+2

也許這只是我,但這個問題似乎沒有任何意義。我建議你提高你的原始問題的進一步細節。在哪個序列中應該發生什麼? – Till 2011-12-27 16:23:53

+0

查看規範 - 操作方法接受一個參數,該參數是觸摸按鈕的指針。將它與鏈接到它的兩個按鈕進行比較,以查看哪一個被觸摸。 – 2011-12-27 16:26:56

回答

1

你只是想連接兩個不同的按鈕,以這個相同的功能?這是沒有問題的,只需進入界面構建器並將兩個按鈕連接到此方法即可。你可以看到如何在界面生成器按鈕連接這個問題

How can I connect "File's Owner" with a button in a Toolbar?

當調用回調函數,你可以找出哪個按鈕調用的函數以這樣的方式

-(void)buttonPressed:(id)sender{ 
    //find out which button was pressed 
    UIButton * pressed = (UIButton*) sender; 
    NSInteger tag = pressed.tag; 
} 

的標籤在界面構建器中定義,只需確保它們對於兩個按鈕是不同的,並且您可以輕鬆完成。

+0

我知道它很容易連接兩個按鈕與一個單一的方法...實際上,方法keyScanButtonTapped調用委託方法( - (無效)imagePickerController:(UIImagePickerController *)閱讀器didFinishPickingMediaWithInfo:(NSDictionary *)信息 {)qrcode閱讀器框架,在這個委託方法中,只有一個文本字段被分配了數據(deviceKey.text = symbol.data;)。我想知道如何將symbol.data分配給deviceID.text。所以當輕觸一個按鈕時,將數據衝擊分配給deviceKey文本字段,並且將其他按鈕敲擊分配給deviceID文本字段 – AppDeveloper 2011-12-27 16:37:11

+0

參見關於如何識別哪個按鈕被按下的更新答案,然後僅將該數據傳遞到以下功能。 – MikeIsrael 2011-12-27 16:42:38

+0

它沒有工作:( – AppDeveloper 2011-12-27 17:27:33

相關問題