0

画面上のテキストフィールドから入力を受け取り、それをphpサーバーに送信するアプリを作成しています。しかし、私はプログラミングが初めてで、やり方がわかりません。Apple の開発に関するいくつかのガイドに従い、テキスト フィールドの作成方法、変更方法、デリゲートの作成方法を学びました。でもここから先はどうすればいいのかわからない。誰かが「送信」ボタンを押すとすぐに、キーボードがダウンし、メッセージがサーバーに送信されます。これどうやってするの?

4

1 に答える 1

0

-textField: shouldChangeCharactersInRange:replacementString:の方法でリターンキーが押されたときに確認できますUITextFieldDelegate。を使用して投稿リクエストを送信しNSURLConnectionます。

.h:

@interface ViewController : UIViewController <UITextFieldDelegate>

@property (nonatomic, retain) IBOutlet UITextField *textField;

.m:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
    if ([string isEqualToString:@"\n"])
    {
        [textField resignFirstResponder];
        [self sendData:textField.text];
    }
    return YES;
}

- (void)sendData:(NSString *)textData
{
    NSURL *serverURL = [NSURL URLWithString:@"http://8.8.8.8:80/1.php"]; //the address of your server
    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:serverURL cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
    [request addValue: @"text/plain charset=UTF-8" forHTTPHeaderField:@"Content-Type"];
    [request setHTTPMethod:@"POST"];
    [request setHTTPBody:[textData dataUsingEncoding:NSUTF8StringEncoding];

    NSError *error = nil;
    NSData *responsedata = [NSURLConnection  sendSynchronousRequest:request returningResponse:nil error:&error];
    if (error)
    {
        //..error handler
    }
}
于 2012-12-16T16:01:11.340 に答える