iOS/iPhone Textbox in Popup - UITextField / UIAlertView (Objective-C,iPhone) |
iOS/iPhone Textbox in Popup - UITextField and UIAlertView (Objective-C,iPhone,iPad) การสร้าง Textbox (UITextField) บน Dialog Popup (UIAlertView) ใช้สำหรับการรับค่าจากผู้ใช้ อาจจะเป็นข้อความสั้น ๆ เช่น ชื่อ หรือ อีเมล์ หรือข้อมูลอื่น ๆ ซึ่งวิธีการทำนั้นก็ไม่ได้ยากอะไรมากมาย และยิ่งใช้ iOS5 แล้วก็จะสามารถทำได้ง่ายขึ้นมาก
Textbox in Popup - UITextField / UIAlertView
ในการสร้าง Text Field หรือ UITextField สำหรับกรอกข้อมูลบน บน Popup เราจะใช้ Class ของ UIAlertView ซึ่งจะใช้การสร้าง Object ของ UITextField ขึ้นมา และทำการ Add เข้าไปใน UIAlertView แต่ใน iOS5 เป็นต้นไปจะสามารถทำได้ง่ายกกว่านั้น ซึ่งจะได้เขียนไว้ในบทความถัดไป
CGAffineTransform myTransform = CGAffineTransformMakeTranslation(0, 60);
[alert setTransform:myTransform];
UITextField *myTextField = [[UITextField alloc]
initWithFrame:CGRectMake(12, 45, 260, 25)];
[myTextField setTag:10251];
[myTextField setBackgroundColor:[UIColor whiteColor]];
[alert addSubview:myTextField];
การอ่านค่า
- (void) alertView:(UIAlertView *) alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
UITextField* myField = (UITextField*)[alertView viewWithTag:10251];
lblResult.text = [myField text];
}
ทดสอบจริงบน Xcode กับ iPhone
เริ่มต้นการสร้าง Project เลือก Single View Application แบบง่าย ๆ
กำหนดชื่อ Project
สร้าง Interface ดังรูป โดยประกอบด้วย Button และ Label และทำการเชื่อม IBOutlet และ IBAction ให้เรียบร้อยด้วย
สำหรับ Code ของ .h และ .m
ViewController.h
//
// ViewController.h
//
// Created by Weerachai on 10/27/55 BE.
// Copyright (c) 2555 Weerachai. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
{
IBOutlet UILabel *lblResult;
}
- (IBAction)btnPopup:(id)sender;
@end
ViewController.m
//
// ViewController.m
//
// Created by Weerachai on 10/27/55 BE.
// Copyright (c) 2555 Weerachai. All rights reserved.
//
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (void)dealloc {
[lblResult release];
[super dealloc];
}
- (IBAction)btnPopup:(id)sender {
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Enter Your Name."
message:@"Hi!"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"OK!", nil];
CGAffineTransform myTransform = CGAffineTransformMakeTranslation(0, 60);
[alert setTransform:myTransform];
UITextField *myTextField = [[UITextField alloc]
initWithFrame:CGRectMake(12, 45, 260, 25)];
[myTextField setTag:10251];
[myTextField setBackgroundColor:[UIColor whiteColor]];
[alert addSubview:myTextField];
[alert show];
[alert release];
[myTextField release];
}
- (void) alertView:(UIAlertView *) alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
UITextField* myField = (UITextField*)[alertView viewWithTag:10251];
lblResult.text = [myField text];
}
@end
Screenshot
คลิกที่ Button เพื่อเปิด Dialog Popup
แสดง Dialog Popup และช่อง Text Box (UITextField) สำหรับกรอกข้อมูล
การแสดงข้อมูลที่ได้จาก Popup
สำหรับ iOS5 เป็นต้นไป จะสามารถทำได้ง่าย ๆ กว่านี้ ลองอ่านบทความนี้ดูครับ
iOS/iPhone Username and Password Alert Popup - UIAlertView (Objective-C,iPhone,iPad)
.
|
ช่วยกันสนับสนุนรักษาเว็บไซต์ความรู้แห่งนี้ไว้ด้วยการสนับสนุน Source Code 2.0 ของทีมงานไทยครีเอท
|
|
|
By : |
ThaiCreate.Com Team (บทความเป็นลิขสิทธิ์ของเว็บไทยครีเอทห้ามนำเผยแพร่ ณ เว็บไซต์อื่น ๆ) |
|
Score Rating : |
|
|
|
Create/Update Date : |
2012-10-29 15:14:02 /
2017-03-25 22:43:36 |
|
Download : |
|
|
Sponsored Links / Related |
|
|
|
|
|
|
|