여러 클래스에서 네트워크에 대한 단일 연결을 사용하는 방법

user2999910

사람들은 내가 프로그래밍을 처음 접하는 문제를 처리하는 데 도움을 주며 그에 따라 일반적으로 문제가 있으며 네트워크 작업 방법을 모릅니다! 로그인 후 사이트에 로그인하는 클래스를 작성했는데 다른 뷰에서 다른 요청을 보내는 데 연결을 사용할 수 없습니다 !!! 내가 쓴 내용은 다음과 같습니다.

- (IBAction)loginClicked:(id)sender {
    @try {

        if([[txtUserName text] isEqualToString:@""] || [[txtPassword text] isEqualToString:@""] ) {
            [self alertStatus:@"Пожалуйста заполните все поля!!!" :@"Авторизация не удолась!"];
        } else {

            NSString *post =[[NSString alloc] initWithFormat:@"login=%@&pass=%@",[txtUserName text],[txtPassword text]];


            NSURL *url=[NSURL URLWithString:@"http://chgu.org/?mobile=1"];

            NSData *postData = [post dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];

            NSString *postLength = [NSString stringWithFormat:@"%lu", (unsigned long)[postData length]];

            NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
            [request setURL:url];
            [request setHTTPMethod:@"POST"];
            [request setValue:postLength forHTTPHeaderField:@"Content-Length"];
            [request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
            [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
            [request setHTTPBody:postData];

            NSError *error = [[NSError alloc] init];
            NSHTTPURLResponse *response = nil;
            NSData *urlData=[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];

            if ([response statusCode] >=200 && [response statusCode] <300)
            {
                NSData *responseData = [[NSData alloc]initWithData:urlData];
                NSDictionary *jsonObject = [NSJSONSerialization JSONObjectWithData:responseData options:NSJSONReadingMutableContainers error:nil];

                if([jsonObject objectForKey:@"error"])
                {
                    [self alertStatus:@"Ошибка ввода данных" :@"Ю хав а трабл"];

                } else {

                    [self alertStatus:@"Авторизация прошла успешно" :@""];
                }

            } else {
                if (error) NSLog(@"Error: %@", error);
                [self alertStatus:@"Connection Failed" :@"Login Failed!"];
            }
        }
    }
    @catch (NSException * e) {
        NSLog(@"Exception: %@", e);
        [self alertStatus:@"Login Failed." :@"Login Failed!"];
    }

    [txtUserName resignFirstResponder];
    [txtPassword resignFirstResponder];
}

다른보기로 이동할 때이 연결을 어떻게 사용합니까? 밤새도록 컴퓨터에 앉아 알아낼 수없는 것을 말해주세요

Vizllx

델리게이트 프로토콜을 통해 이러한 컨트롤러간에 상대적으로 긴밀한 결합을 원한다고 가정하면 올바른 아이디어가 있습니다.

어느 컨트롤러도 대리자 속성이 설정 될 때까지 다른 컨트롤러에 대해 알지 못하기 때문에 둘 다에 대한 참조가있는 일부 개체가 해당 관계를 연결해야합니다. 귀하의 경우에는 두 컨트롤러를 모두 만들고 하나를 다른 컨트롤러의 대리자로 설정하고 둘 다 탭 막대 컨트롤러에 전달할 수있는 응용 프로그램 대리자 일 것입니다.

실제로 원하는 것은 앱 대리자가 두 컨트롤러에 공유 모델 개체에 대한 참조를 제공하도록하는 것입니다. FirstViewController는 버튼을 탭할 때 해당 모델을 업데이트 할 수 있으며 SecondViewController는 모델의 변경 사항을 관찰하여 모델의 디스플레이를 업데이트 할 수 있습니다 (또는 현재 모델 상태에 따라 표시 될 때보기 만 업데이트 할 수 있음). 이렇게하면 컨트롤러가 서로에 대해 알 필요가 없습니다.

secondVC에서 다음과 같이 정의하십시오.

@protocol secondVCDelegate

@interface secondVC : UIViewController
    @property (nonatomic, assign) id<secondVCDelegate> delegate;
@end


@optional
-(void)someDelegateMethod:(secondVC*)viewController;

@end

secondVC의 인스턴스를 만들 때 secondVC의 delegate 속성을 self에 할당해야합니다! 이 같은:

// in firstVC
secondVC vc = [[secondVC alloc]...];
vc.delegate = self;
[navcontroller pushVC:vc];
the line vc.delegate = self; does the trick.

도움이 되길 바랍니다 ...

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

제한된 네트워크에서 Python을 사용하여 여러 개의 대용량 파일을 다운로드하는 방법

분류에서Dev

MAC 주소를 사용하여 동일한 네트워크에서 Android 태블릿을 추적하는 방법

분류에서Dev

단일 클래스에서 여러 알람을 해결하는 방법

분류에서Dev

apply () 제품군을 사용하여 R에서 여러 열을 단일 벡터로 연결하는 방법

분류에서Dev

동일한 페이지에서 여러 플롯에 대해 단일 xlabel 및 ylabel을 사용하는 방법

분류에서Dev

다른 자격 증명을 사용하여 동일한 호스트의 여러 네트워크 공유에 연결 하시겠습니까?

분류에서Dev

Java에서 동적 클래스 로딩을 사용하여 동일한 클래스의 여러 버전을로드하는 방법

분류에서Dev

개방형 WiFi 네트워크에 대한 연결 차단

분류에서Dev

Python Nmap을 사용하여 네트워크에서 모바일 정보 연결

분류에서Dev

Prism의 viewlocator를 사용하여 여러 ViewModel을 단일 View에 연결하는 방법은 무엇입니까?

분류에서Dev

connman을 사용하여 ieee8021x 네트워크에 연결하는 방법

분류에서Dev

ssh를 통해 동일한 네트워크의 여러 클라이언트 중 하나에 연결

분류에서Dev

파일 관리자 파일 열기 대화 상자를 사용하여 네트워크 공유에서 파일을 선택하는 방법

분류에서Dev

파일 관리자 파일 열기 대화 상자를 사용하여 네트워크 공유에서 파일을 선택하는 방법

분류에서Dev

Boost ASIO를 사용하여 서버에 대한 여러 연결을 만드는 방법

분류에서Dev

SASS를 사용하여 동일한 요소에서 여러 하위 클래스를 참조하는 방법

분류에서Dev

xpath를 사용하여 동일한 클래스 이름을 가진 여러 div에서 링크를 추출하는 방법

분류에서Dev

QEMU / KVM 가상 머신에 대해 브리지 된 네트워크를 구성하여 WiFi를 통해 연결된 동일한 로컬 네트워크에 있도록하는 방법은 무엇입니까?

분류에서Dev

JasperReports를 사용하여 단일 보고서에 대한 여러 결과 집합을 전달하는 방법은 무엇입니까?

분류에서Dev

스웜에서 여러 스택을 네트워크화하는 방법

분류에서Dev

무선 네트워크는 한 네트워크에 연결하고 연결을 끊고 다른 네트워크에 연결 한 다음 이전 네트워크에 연결하여 무한히 수행합니다.

분류에서Dev

동일한 포트를 사용하여 두 개의 네트워크 인터페이스에 연결

분류에서Dev

PF 의미에서 서브넷이 다른 IP로 동일한 네트워크에 연결하는 방법

분류에서Dev

Java의 동일한 클래스에서 다른 setter를 사용하여 setter에 값을 제공하는 방법

분류에서Dev

Oracle Virtual Box에서 정적 IP를 사용하여 호스트와 게스트간에 네트워크 연결을 생성하는 방법

분류에서Dev

Pandas를 사용하여 여러 Excel 열에서 동일한 조건을 사용하는 방법 (대체)?

분류에서Dev

NSURLSession (OS X)에서 특정 네트워크 연결을 사용하는 방법

분류에서Dev

NSURLSession (OS X)에서 특정 네트워크 연결을 사용하는 방법

분류에서Dev

여러 다른 입력 파일을 사용하여 Java에서 동일한 클래스를 자동으로 실행하는 방법

Related 관련 기사

  1. 1

    제한된 네트워크에서 Python을 사용하여 여러 개의 대용량 파일을 다운로드하는 방법

  2. 2

    MAC 주소를 사용하여 동일한 네트워크에서 Android 태블릿을 추적하는 방법

  3. 3

    단일 클래스에서 여러 알람을 해결하는 방법

  4. 4

    apply () 제품군을 사용하여 R에서 여러 열을 단일 벡터로 연결하는 방법

  5. 5

    동일한 페이지에서 여러 플롯에 대해 단일 xlabel 및 ylabel을 사용하는 방법

  6. 6

    다른 자격 증명을 사용하여 동일한 호스트의 여러 네트워크 공유에 연결 하시겠습니까?

  7. 7

    Java에서 동적 클래스 로딩을 사용하여 동일한 클래스의 여러 버전을로드하는 방법

  8. 8

    개방형 WiFi 네트워크에 대한 연결 차단

  9. 9

    Python Nmap을 사용하여 네트워크에서 모바일 정보 연결

  10. 10

    Prism의 viewlocator를 사용하여 여러 ViewModel을 단일 View에 연결하는 방법은 무엇입니까?

  11. 11

    connman을 사용하여 ieee8021x 네트워크에 연결하는 방법

  12. 12

    ssh를 통해 동일한 네트워크의 여러 클라이언트 중 하나에 연결

  13. 13

    파일 관리자 파일 열기 대화 상자를 사용하여 네트워크 공유에서 파일을 선택하는 방법

  14. 14

    파일 관리자 파일 열기 대화 상자를 사용하여 네트워크 공유에서 파일을 선택하는 방법

  15. 15

    Boost ASIO를 사용하여 서버에 대한 여러 연결을 만드는 방법

  16. 16

    SASS를 사용하여 동일한 요소에서 여러 하위 클래스를 참조하는 방법

  17. 17

    xpath를 사용하여 동일한 클래스 이름을 가진 여러 div에서 링크를 추출하는 방법

  18. 18

    QEMU / KVM 가상 머신에 대해 브리지 된 네트워크를 구성하여 WiFi를 통해 연결된 동일한 로컬 네트워크에 있도록하는 방법은 무엇입니까?

  19. 19

    JasperReports를 사용하여 단일 보고서에 대한 여러 결과 집합을 전달하는 방법은 무엇입니까?

  20. 20

    스웜에서 여러 스택을 네트워크화하는 방법

  21. 21

    무선 네트워크는 한 네트워크에 연결하고 연결을 끊고 다른 네트워크에 연결 한 다음 이전 네트워크에 연결하여 무한히 수행합니다.

  22. 22

    동일한 포트를 사용하여 두 개의 네트워크 인터페이스에 연결

  23. 23

    PF 의미에서 서브넷이 다른 IP로 동일한 네트워크에 연결하는 방법

  24. 24

    Java의 동일한 클래스에서 다른 setter를 사용하여 setter에 값을 제공하는 방법

  25. 25

    Oracle Virtual Box에서 정적 IP를 사용하여 호스트와 게스트간에 네트워크 연결을 생성하는 방법

  26. 26

    Pandas를 사용하여 여러 Excel 열에서 동일한 조건을 사용하는 방법 (대체)?

  27. 27

    NSURLSession (OS X)에서 특정 네트워크 연결을 사용하는 방법

  28. 28

    NSURLSession (OS X)에서 특정 네트워크 연결을 사용하는 방법

  29. 29

    여러 다른 입력 파일을 사용하여 Java에서 동일한 클래스를 자동으로 실행하는 방법

뜨겁다태그

보관