0

UITextView文字列、この場合はcombined変数を表示することができないようです。

これが私のコードです:

- (void)socket:(GCDAsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag {
    NSData *pongReply = [@"PONG :hades.arpa\r\n" dataUsingEncoding:NSASCIIStringEncoding];
    NSData *strData = [data subdataWithRange:NSMakeRange(0, [data length])];
    NSString *msg = [[NSString alloc] initWithData:strData encoding:NSASCIIStringEncoding];
    [asyncSocket readDataWithTimeout:-1 tag:0];
    NSLog(@"%@", msg);

    //ping reply
    NSRange pingReply = [msg rangeOfString:@"PING :hades.arpa"];
    NSRange chanMsgs = [msg rangeOfString:@"PRIVMSG #"];
    if (pingReply.location != NSNotFound) {
        NSLog(@"we got pinged");
        [asyncSocket writeData:pongReply withTimeout:-1 tag:1];
    }

    //Channel control / msgs
    if (chanMsgs.location != NSNotFound) {
        NSLog(@"CHANNEL MESSAGE!");
        //code for getting text after (space):
        NSString *str = msg;
        NSString *search = @" :";
        //code for before !~
        NSString *str2 = msg;
        NSString *search2 = @"!";
        NSString *sub = [str substringFromIndex:NSMaxRange([str rangeOfString:search])];
        NSString *sub2 = [str2 substringToIndex:NSMaxRange([str2 rangeOfString:search2])];

        NSString *sub2out = [sub2 stringByReplacingOccurrencesOfString:@":" withString:@""];
        NSString *sub2out2 = [sub2out stringByReplacingOccurrencesOfString:@"!" withString:@""];
        NSString *combined = [NSString stringWithFormat:@"%@: %@", sub2out2, sub];
        NSLog(@"%@", combined);
        chatWindow.text = [chatWindow.text stringByAppendingString:combined];
        chatWindow.text = [NSString stringWithFormat: @"%@", combined];
    }
}

何が間違っている可能性がありますか?

4

1 に答える 1

0

問題は次のchatWindowいずれかです。

  • それはnil
  • UITextView にバインドされていません (「ウィンドウ」名が示すように)
  • 見えない(場所が窓の外かhiddenYES)

それらを確認してください。

簡単なテストは、リストした計算全体を次のように置き換えることです。

chatWindow.text = @"Sample chat text";

それが失敗した場合は、chatWindow を詳しく調べます (デバッガーまたは を使用NSLog (@"Window: %@", chatWindow)) 。

于 2013-07-15T02:26:42.963 に答える