IOS рд╕реВрдЪрдирд╛ рдХреЗрдВрджреНрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдЬреЗрдЯ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░реЗрдВ



рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреЗрдВрджреНрд░ рдЖрдИрдУрдПрд╕ рдореЗрдВ рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рди рд╕реБрд╡рд┐рдзрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХреЗрд╡рд▓ рдорд╛рдирдХ рд╡рд┐рдЬреЗрдЯ рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рд╣реИред рдпрд╣ рдХреЛрдИ рд░рд╣рд╕реНрдп рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЬреЗрд▓рдмреНрд░реЗрдХ рдХреЗ рдкреНрд░рд╢рдВрд╕рдХ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдерд░реНрдб-рдкрд╛рд░реНрдЯреА рдЯреНрд╡рд┐рдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдЙрдирдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ рдФрд░ рдЕрдкрдиреЗ рдЗрдВрдЯрд░рдиреЗрдЯ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рд╕рдВрддреБрд▓рди рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╡рд┐рдЬреЗрдЯ рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ред


рд╡рд┐рдЬреЗрдЯ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ Xcode рдХреА рдЬрд░реВрд░рдд рд╣реИ, iOS 5.x рдХреЗ рд╕рд╛рде рдПрдХ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдбрд┐рд╡рд╛рдЗрд╕ рдФрд░ рдЗрд╕рдХреА рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рддрдХ рдкрд╣реБрдВрдЪ, рдФрд░ рд╡рд┐рдЬреЗрдЯ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдо iOSOpenDev рд╕реВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╕реНрддреГрдд рдирд┐рд░реНрджреЗрд╢ рдбреЗрд╡рд▓рдкрд░ рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рд╣реИрдВред

рдпрджрд┐ рд╕рдм рдХреБрдЫ рддреИрдпрд╛рд░ рд╣реИ, рддреЛ рдЖрдЧреЗ рдмрдврд╝реЗрдВ!

Xcode рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ рдФрд░ рдПрдХ рдирдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдВ:
IOS рд╢реНрд░реЗрдгреА рдореЗрдВ iOSOpenDev рдЖрдЗрдЯрдо рдЦреЛрд▓реЗрдВ рдФрд░ NotificationCenter рд╡рд┐рдЬреЗрдЯ рдЪреБрдиреЗрдВред



рддреЛ, рд╣рдорд╛рд░реЗ рд╕рд╛рдордиреЗ рд╕рдорд╛рдкреНрдд (рд▓реЗрдХрд┐рди рдЦрд╛рд▓реА) рд╡рд┐рдЬреЗрдЯ рдХреЗ рд▓рд┐рдП рдХреЛрдб рд╣реИред рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕реЗ Cmd + Shift + I (рдпрд╛ рдЙрддреНрдкрд╛рдж рдХрд╛ рдЪрдпрди рдХрд░рдХреЗ> рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП> рдореЗрдиреВ рд╕реЗ рд░реВрдкрд░реЗрдЦрд╛ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдорд╛рдг рдХрд░рдХреЗ) рджрдмрд╛рдХрд░ рд╕рдВрдХрд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╣рдореЗрдВ рд╕реНрдерд╛рдкрдирд╛ .deb рдлрд╝рд╛рдЗрд▓ рдорд┐рд▓рддреА рд╣реИ, рдЬреЛ рд╣рдорд╛рд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ / рд╕рдВрдХреБрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИред

рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЧреБрдгреЛрдВ рдореЗрдВ, рдЖрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдлрд╝рд╛рдЗрд▓ рддреБрд░рдВрдд рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдЗрдВрд╕реНрдЯреЙрд▓ рд╣реЛ рдЧрдИ рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ SSH рдФрд░ Wi-Fi рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЖрд▓реЗрдЦ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛ рдЬрд╣рд╛рдВ рдХреЛрдИ рд╡рд╛рдпрд░рд▓реЗрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдирд╣реАрдВ рдерд╛, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдХрд┐рд╕реА рднреА iOS рдлрд╝рд╛рдЗрд▓ рдкреНрд░рдмрдВрдзрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, iExplorer рдФрд░ рд╕реНрдерд╛рдкрд┐рдд iFile рдбрд┐рд╡рд╛рдЗрд╕ред

рд╣рдо рдЖрдкрдХреЗ рд╡рд┐рдЬреЗрдЯ рдХреЛ рдЖрдкрдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдХрд┐рд╕реА рднреА рд╕реНрдерд╛рди рдкрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдХреЙрдкреА рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕реЗ iFile рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдлрд┐рд░ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдпрд╛ рд░рд┐рдмреВрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рд╣рдорд╛рд░реЗ рд╡рд┐рдЬреЗрдЯ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреЗрдВрджреНрд░ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред

рдЕрдм, рдпрджрд┐ рдЖрдк рд╕реВрдЪрдирд╛ рдХреЗрдВрджреНрд░ рдЦреЛрд▓рддреЗ рд╣реИрдВ, рддреЛ ... рд╡рд┐рдЬреЗрдЯ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдЗрд╕реЗ рдЕрднреА рднреА рдЪрд╛рд▓реВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╕реЗрдЯрд┐рдВрдЧ> рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди> рдЕрдкрдиреЗ рд╡рд┐рдЬреЗрдЯ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдЗрд╕реЗ рдЪрд╛рд▓реВ рдХрд░реЗрдВ!


рдЗрд╕рд╕реЗ рдкрд░рд┐рдЪрдп рдкреВрд░рд╛ рд╣реЛрддрд╛ рд╣реИред
рд╣рдо рдПрдХ рдмреИрд▓реЗрдВрд╕ рдЪреЗрдХ рд╡рд┐рдЬреЗрдЯ рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ!

рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░, рдореЗрд░рд╛ рдкреНрд░рджрд╛рддрд╛ рдХрд┐рд╕реА рдЦрд╛рддреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрдкреАрдЖрдИ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рд▓рд┐рдП рдЧреИрдЬреЗрдЯ рдореЗрдВ рд╕рд╣реА рдХреЛрдб рдХреА рдЬрд╛рд╕реВрд╕реА рдХреАред
рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ, https рдЦреЛрд▓реЗрдВ, рдЬрд┐рд╕рдХрд╛ рдкрддрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ xml рдЖрддреА рд╣реИред

рдорд╛рдирдХ рдореМрд╕рдо рд╡рд┐рдЬреЗрдЯ рдореЗрдВ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ, рдПрдХ рд╕рдкреНрддрд╛рд╣ рдХреЗ рд▓рд┐рдП рдореМрд╕рдо рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП "рд╕реНрдХреНрд░реЙрд▓" рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╣рдо рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рдХреЛ рджреЛ UITextFiled (рд▓реЙрдЧрд┐рди / рдкрд╛рд╕рд╡рд░реНрдб) рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд▓реЗрдВрдЧреЗред

.H рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рдореНрди рдХреЛрдб рдЬреЛрдбрд╝реЗрдВ:
UIScrollView *sv; UIView *balanceView, *settingsView; UITextField * loginField; UITextField * passField; 


рдФрд░ .m рдлрд╝рд╛рдЗрд▓ рдореЗрдВ, рдХреБрдЫ UILabel рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдХреЛрдб рдареАрдХ рдХрд░реЗрдВ:

 - (UIView *)view { if (_view == nil) { _view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 71)]; UIImage *bg = [[UIImage imageWithContentsOfFile:@"/System/Library/WeeAppPlugins/balance.bundle/WeeAppBackground.png"] stretchableImageWithLeftCapWidth:5 topCapHeight:71]; UIImageView *bgView = [[UIImageView alloc] initWithImage:bg]; bgView.frame = CGRectMake(2, 0, 316, 71); UIImageView *bgSet = [[UIImageView alloc] initWithImage:bg]; bgSet.frame = CGRectMake(6, 0, 316, 71); sv = [[[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 71)] autorelease]; sv.contentSize = CGSizeMake(2 * 320, 71); sv.pagingEnabled = YES; sv.delegate = self; for (int i = 0; i < 1; i++) { balanceView = [[UIView alloc] initWithFrame:CGRectMake(i * 316, 0, 316, 71)]; [balanceView addSubview:bgView]; lblName = [[UILabel alloc] initWithFrame:CGRectMake(9, 5, 285, 15)]; lblName.backgroundColor = [UIColor clearColor]; lblName.textColor = [UIColor whiteColor]; lblName.font = [UIFont systemFontOfSize: 12.0]; lblName.text = @"  "; lblName.alpha = 1; [balanceView addSubview:lblName]; [lblName release]; lblText = [[UILabel alloc] initWithFrame:CGRectMake(9, 18, 75, 15)]; lblText.backgroundColor = [UIColor clearColor]; lblText.textColor = [UIColor whiteColor]; lblText.font = [UIFont systemFontOfSize: 12.0]; lblText.text = @" :"; lblText.alpha = 0.6; [balanceView addSubview:lblText]; [lblText release]; lblDate = [[UILabel alloc] initWithFrame:CGRectMake(9, 38, 114, 28)]; lblDate.backgroundColor = [UIColor clearColor]; lblDate.textColor = [UIColor whiteColor]; lblDate.font = [UIFont systemFontOfSize: 12.0]; lblDate.numberOfLines = 2; lblDate.text = @"   0 "; lblDate.alpha = 0.6; [balanceView addSubview:lblDate]; [lblDate release]; lblBalance = [[UILabel alloc] initWithFrame:CGRectMake(135, 22, 175, 45)]; lblBalance.backgroundColor = [UIColor clearColor]; lblBalance.textColor = [UIColor whiteColor]; lblBalance.font = [UIFont fontWithName: @"Helvetica-Light" size: 45.0]; lblBalance.textAlignment = UITextAlignmentRight; lblBalance.text = @"0.0"; lblBalance.alpha = 1; [balanceView addSubview:lblBalance]; [lblBalance release]; [sv addSubview:balanceView]; [balanceView release]; } for (int i = 1; i < 2; i++) { settingsView = [[UIView alloc] initWithFrame:CGRectMake(i * 316, 0, 316, 71)]; [settingsView addSubview:bgSet]; loginField = [[UITextField alloc] initWithFrame:CGRectMake(330, 7, 300, 25)]; loginField.borderStyle = UITextBorderStyleRoundedRect; loginField.textColor = [UIColor blackColor]; loginField.font = [UIFont systemFontOfSize:14.0]; loginField.placeholder = @""; loginField.backgroundColor = [UIColor whiteColor]; loginField.autocorrectionType = UITextAutocorrectionTypeNo; loginField.keyboardType = UIKeyboardTypeDefault; loginField.returnKeyType = UIReturnKeyNext; loginField.clearButtonMode = UITextFieldViewModeWhileEditing; loginField.keyboardAppearance = UIKeyboardAppearanceAlert; loginField.delegate = self; loginField.tag = 999; [sv addSubview:loginField]; passField = [[UITextField alloc] initWithFrame:CGRectMake(330, 39, 300, 25)]; passField.borderStyle = UITextBorderStyleRoundedRect; passField.textColor = [UIColor blackColor]; passField.font = [UIFont systemFontOfSize:14.0]; passField.placeholder = @""; passField.secureTextEntry = TRUE; passField.backgroundColor = [UIColor whiteColor]; passField.autocorrectionType = UITextAutocorrectionTypeNo passField.keyboardType = UIKeyboardTypeDefault; passField.returnKeyType = UIReturnKeyDone; passField.clearButtonMode = UITextFieldViewModeWhileEditing; passField.keyboardAppearance = UIKeyboardAppearanceAlert; passField.delegate = self; [sv addSubview:passField]; [sv addSubview:settingsView]; [settingsView release]; } [bgView release]; [_view addSubview:sv]; [[loginField superview] bringSubviewToFront:loginField]; [[passField superview] bringSubviewToFront:passField]; [sv setShowsHorizontalScrollIndicator:NO]; [sv setShowsVerticalScrollIndicator:NO]; } return _view; } 


рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдордиреЗ рдПрдХ UIScrollView рдмрдирд╛рдпрд╛, рдЗрд╕рдореЗрдВ 2 рд╕рд╛рдорд╛рдиреНрдп рджреГрд╢реНрдп рдЬреЛрдбрд╝реЗ, рдЙрдиреНрд╣реЗрдВ рдПрдХ рдкреГрд╖реНрдарднреВрдорд┐ рд╕реМрдВрдкреА рдФрд░ рдкрд╣рд▓реЗ рдкрд░ рдХрдИ рд▓реЗрдмрд▓ рдирд╣реАрдВ рд░рдЦреЗ, рд▓реЗрдХрд┐рди рд▓реЙрдЧрд┐рди рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреВрд╕рд░реЗ рдкрд░ рджреЛ UITextFieldред
рдЕрдЧрд▓рд╛, рд╣рдо рдЕрдкрдиреЗ UITextField рдореЗрдВ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЬреЛрдбрд╝реЗрдВрдЧреЗ, рдЕрдЧрд▓реЗ рдмрдЯрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓реЙрдЧрд┐рди рдлрд╝реАрд▓реНрдб рд╕реЗ рдкрд╛рд╕рд╡рд░реНрдб рдлрд╝реАрд▓реНрдб рдореЗрдВ рд╕рдВрдХреНрд░рдордг рдХрд░реЗрдВ рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рдХреАрдмреЛрд░реНрдб рдмрдЯрди рдкрд░ рд╕рд╣реЗрдЬреЗрдВ:

 -(BOOL)textFieldShouldReturn:(UITextField *)textField { if (textField.tag == 999) { [passField becomeFirstResponder]; } else { NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults]; [prefs setObject:loginField.text forKey:@"login"]; [prefs setObject:passField.text forKey:@"pass"]; [prefs synchronize]; [textField resignFirstResponder]; } return YES; } 


рдФрд░ рдЕрдЧрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдкрдирд╛ рдорди рдмрджрд▓ рд▓реЗрддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдХреАрдмреЛрд░реНрдб рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

 - (void) scrollViewDidScroll: (UIScrollView *) aScrollView { [loginField resignFirstResponder]; [passField resignFirstResponder]; } 


рдЕрдм рд╣рдо рдкрд╛рд░реНрд╕рд░ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╣рдо рд╡рд┐рдЬреЗрдЯ рдХреА рдЧрддрд┐рд╡рд┐рдзрд┐ рддрдм рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рд┐рд░реНрдл рдПрдирд╕реА рдЦреЛрд▓рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдордп рдХреЗ рдмрд╛рджред рд╣рдо рдЯрд╛рдЗрдорд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред NC рдЦреЛрд▓рдиреЗ рдХреЗ рд╕рдордп рдЗрд╕реЗ рдЪрд▓рд╛рдПрдВ:

 - (void)viewWillAppear { [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(getBalance) userInfo:nil repeats:NO]; } 


рдФрд░ рдПрдХ рд╕реЗрдХрдВрдб рдХреЗ рдмрд╛рдж рд╣рдо рдорд┐рд▓рддреЗ рд╣реИрдВ:

 - (void)getBalance { NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults]; NSString *gnLookup = [NSString stringWithFormat: @"https://billing.novotelecom.ru/billing/user/api/?method=userInfo&login=%@&password=%@", [prefs objectForKey:@"login"], [prefs objectForKey:@"pass"]]; NSXMLParser *gnParser = [[NSXMLParser alloc] initWithContentsOfURL: [NSURL URLWithString:gnLookup]]; [gnParser setDelegate:self]; [gnParser parse]; } - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName attributes:(NSDictionary *)attributeDict { if ([elementName compare:@"name"] == NSOrderedSame) { ntkUser = [[NSMutableString alloc] initWithCapacity:4]; } if ([elementName compare:@"days2BlockStr"] == NSOrderedSame) { ntkUpToDate = [[NSMutableString alloc] initWithCapacity:4]; } if ([elementName compare:@"balance"] == NSOrderedSame) { ntkBalance = [[NSMutableString alloc] initWithCapacity:4]; } } - (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string { if (ntkUser && string) { [ntkUser appendString:string]; } if (ntkUpToDate && string) { [ntkUpToDate appendString:string]; } if (ntkBalance && string) { [ntkBalance appendString:string]; } } - (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName { if ([elementName compare:@"name"] == NSOrderedSame) { lblName.text = [NSString stringWithFormat:@"%@", ntkUser]; } if ([elementName compare:@"days2BlockStr"] == NSOrderedSame) { lblDate.text = [NSString stringWithFormat:@"%@", ntkUpToDate]; } if ([elementName compare:@"balance"] == NSOrderedSame) { lblBalance.text = [NSString stringWithFormat:@"%@", ntkBalance]; } } 


Cmd + Shift + I рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ, рдбрд┐рдмреЗрдЯ рдХреЛ рдХреЙрдкреА рдХрд░реЗрдВ, рдлрд┐рд░ рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ рдФрд░ рд░рд┐рд╕реНрдкреЙрдиреНрдб рдХрд░реЗрдВ (рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рдбрд┐рдмреЗрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡рд┐рдЬреЗрдЯ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЗрд╕рдХреА рд╣рд░ рдмрд╛рд░ рдЬрд░реВрд░рдд рд╣реЛрддреА рд╣реИ)



рдпрд╣ рд╢рд╛рдпрдж рд╕рднреА, рд╡рд┐рдЬреЗрдЯ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрдВрдЯрд░рдиреЗрдЯ рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдПрдХ рдЪреЗрдХ рдЬреЛрдбрд╝рдиреЗ, рдкрд╛рда рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░, рд▓реЗрдмрд▓ рдФрд░ рдЕрдзрд┐рдХ, рджреЛрдиреЛрдВ рджреГрд╢реНрдп рдФрд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЫрд╛рдпрд╛ рдЬреЛрдбрд╝реЗрдВред рд▓реЗрдХрд┐рди рд▓реЗрдЦ рдХрд╛ рд╕рд╛рд░ рд▓реЛрдЧреЛрдВ рдХреЛ рд╡рд┐рдЧреЗрдЯреНрд╕ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рдирд╛ рд╣реИ, рдФрд░ рд╢рд╛рдпрдж рдПрдХ рджрд┐рди, Apple рдЕрднреА рднреА рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреЗрдВрджреНрд░ рдПрдкреАрдЖрдИ рдЦреЛрд▓реЗрдЧрд╛ред

рдЧрд┐рдердм рдХреЛрдб

рд╕реМрднрд╛рдЧреНрдп!

Source: https://habr.com/ru/post/In138032/


All Articles