1

私は単一のラベルを使用し、「HELLO」という単語を分割しました。次に、別の関数の単語を照合する必要があります-(void)matchWordsが、probemは、照合される最後のラベルにすぎません。他のラベルと一致しません。

たとえば、「HELLO 」という単語があり、 「H」をクリックすると、文字「H」が任意の色で強調表示されますが、問題は、入力からの一致する文字に対して「o」のみが強調表示されることです...私は使用しましたユニ文字を含む分割されたラベルのタグ値を設定するiTag

これが私の関数です:

- (IBAction)onClick1:(id)sender {

NSString *title = [(UIButton *)sender currentTitle];
for(i=0;i<vCount;i++) {
    Str = [NSString stringWithFormat:@"%c",[StrName characterAtIndex:i]];
            if([title isEqualToString:Str]){
   MyLable1.backgroundColor = [UIColor greenColor];
 }}}
4

2 に答える 2

1

次のようなものを使用できませんか?

NSString *searchWord = @"Hello";    //The word to search against
NSString *searchChar = (UIButton *)sender.title;    //The character being searched
if ([searchWord rangeOfString:searchChar].location != NSNotFound)    //If found, highlight label
{
MyLable1.backgroundColor = [UIColor greenColor];
}
于 2012-08-07T11:21:05.040 に答える
1
- (IBAction)onClick1:(id)sender {

    NSString *title = [(UIButton *)sender currentTitle];
    for(i=0;i<vCount;i++) {
    for (NSString* key in Name){
    NSLog(@"Name");
    UILabel *Selected = (UILabel*)[self.view viewWithTag:[key intValue]];
    if ([title isEqualToString:Selected.text]) { 
    pStr = [NSString stringWithFormat:@"%c",[pStrName characterAtIndex:i]];
    Selected.backgroundColor = [UIColor greenColor];

      }
   }
}

これを使用して、出力を正常に実行しました。

于 2012-08-07T11:30:24.787 に答える