2017-04-14 28 views
0

これは、カメラからのテキストをTextRecognizerまで認識し、テキスト内の特定の単語を検索するスクリプトの一部です。単語が存在する場合、システムはString foundの単語を後で保存する必要があります。SparseArrayのメソッドを解決できない

Cannot resolve method 'contains(java.lang.String)' 
Cannot resolve method 'getValue(int)' 

どのように私はこのエラーを解決することができます。

問題は、私は、この2個のエラーを持っているということでしょうか?私はSparseArray<TextBlock>のための類似の方法を見つけませんでした。

public void receiveDetections(Detector.Detections<TextBlock> detections) { 

    String search = "palabra"; 
    final SparseArray<TextBlock> items = detections.getDetectedItems(); //is the detection of textRecognizer of the camera 

    for (int i=0; i<items.size(); ++i) 
    { 
    if(items.get(i).contains(search)) 
    { 
     String found = items.getValue(i+1); 
     Log.i("current lines ", found); 
    } 
    } 

} 

答えて

0

SparseArray documentation hereがあります。

あなたが見ることができるように、SparseArrayにはgetValue()方法は、あなたのitems変数が有効ではないようなので、SparseArraygetValue(int)を呼び出して、ありません。

同様に、TextBlockにはcontains(String)メソッドがありません。 items.get(i)を呼び出すとTextBlockが返されるため、TextBlockcontains(String)を呼び出すと同様に無効になります。

for (int i=0; i<items.size(); ++i) {] 
    TextBlock text = items.get(i) 

    // Get the TextBlock's value as a String 
    String value = text.getValue() 

    // Check if this text block contains the search string 
    if(value.contains(search)) { 
     String found = items.getValue(i+1); 
     Log.i("Found search string " + search + " in block " + value); 
    } 
} 
:私はあなたのコードで何を参照してくださいに基づいて

、私はあなたが Stringのメソッドを呼び出すより、このような何かを探している推測しています
関連する問題