fb_license

技術標籤

@selector (1) 初使化區塊 (1) 物件 (1) 物件導向 (2) 型別 (4) 封裝 (1) 流程控制 (1) 陣列 (3) 推論型別 (2) 實機測試 (1) 蓋索林(gasolin) (1) 模組 (1) 憑證 (1) 轉型 (1) 羅康鴻 (121) 類別 (1) 變數 (5) Accelerometer (1) ActiveRecord (1) Activity (1) AFNetworking (1) alloc (1) Android (3) Animation (1) App (1) App ID (1) APP上傳 (1) ASP.NET (1) AVAudioPlayer (1) block (1) C# (2) class (1) CLLocationManager (1) CLLocationManagerDelegate (1) CMMotionManager (4) Controller (1) delegate (1) DELETE語法 (1) Device Motion資料 (1) Dialog (1) DropDownList (1) dynamic language (2) Facebook SDK (9) FBRequest (5) FBRequestConnection (2) FMDB (1) Gesture Recognizers (6) GROUP BY (2) Gyro (1) HAVING (1) IBAction (1) IBOutlet (1) id (3) inheritance (1) init (1) Insert (1) instance variable (1) Interface Builder (1) iOS (70) iOS idea (7) iOS Introduction (1) Layout (1) Magnetometer (1) Menu (2) Method (2) MKMapView (1) MKPointAnnotation (1) MS SQL (5) Nil (1) NSArray (1) NSDictionary (1) NSError (1) NSFileManager & .plist (1) NSMutableArray (1) NSMutableDictionary (1) NSNotificationCenter (1) NULL (1) object (2) Objective-C (16) Objective-C idea (1) ORDER BY (1) Parameter (1) property (1) protocol (2) Provisioning (1) Proximate Sensor (1) Q and A (2) R類別 (1) Rails (9) RESTful SOA (9) Ruby (8) Scene (1) SEELECT (1) Segue (2) SEL (1) SELECT語法 (1) Shake (1) Simulator (1) SOA (8) SQL (6) SQL Server (5) SQL函數 (1) SQL彙總函數 SQL (1) SQLite (1) Storyboard (1) Style (1) Swift (1) Table (1) target & action (1) Theme (1) Toast (1) TRUNCATE TABLE語法 (1) UIActionSheet (1) UIActionSheetDelegate (1) UIActivityIndicatorView (1) UIAlertView (1) UIBarButtonItem (1) UIButton (1) UICollectionView (1) UICollectionViewDataSource (1) UIControl (9) UIDatePicker (1) UIImage (1) UIImagePickerController (2) UIImagePickerControllerDelegate (2) UIImageView (1) UILabel (1) UILongPressGestureRecognizer (1) UINavigationController (2) UIPanGestureRecognizer (1) UIPinchGestureRecognizer (1) UIProgressView (1) UIResponder (1) UIRotationGestureRecognizer (1) UISegmentedControl (1) UISlider (1) UIStepper (1) UISwipeGestureRecognizer (1) UISwitch (1) UITabBarController (1) UITableView (1) UITableViewDataSource (1) UITapGestureRecognizer (1) UITextField (1) UITextFieldDelegate (1) UITextView (2) UITextViewDelegate (1) UIToolBar (1) UIView (8) UIWebView (1) UPDATE語法 (1) var (2) VB.NET (7) View (4) WHERE子句 (1) XML (1)

2013/06/18

[iOS] 長按手勢 - UILongPressGestureRecognizer


我是UILongPressGestureRecognizer,我幫您辨識使用者長時間按住畫面的手勢











第1步:建立一個名為"UILongPressGestureRecognizer"的"Single View Application"專案
 

第2步:拖拉一個UILongPressGestureRecognizer,以便辨識使用者滑動的事件。



第3步:處理UILongPressGestureRecognizer滑動後產生的事件,在此以UIAlertView簡單顯示一個畫面被長時間按下的訊息。

  • 3.1 對UILongPressGestureRecognizer按鈕按右鍵打開選單,找到代表按鈕被按下的"selector"事件,並拖拉右方圓點至ViewController類別的定義中(.h)。



  • 3.2 於"Name"欄位中輸入"longPress",並按下"Connect"。


  • 3.3 此時會產生一個名為"longPress:"方法,其已與Interface Builder連結。


  • 3.4 打開"ViewController.m"檔案,並找到longPress:方法,透過UIAlertView顯示"抓到長按事件了!"的字樣


- (IBAction)longPress:(id)sender { UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示" message:@"抓到長按訊息了!" delegate:nil cancelButtonTitle:@"關閉" otherButtonTitles:nil, nil]; [alert show]; }



第4步:為底層的View加上的手勢辨識能力。對View按右鍵,找到"gestureRecognizers",按住拖拉至UILongPressGestureRecognizer上。





第5步:執行,針對任何一個點長時間按住,以觸發長按事件






想要決定按住的時間有多長才觸發長按事件?! 沒問題透過UISwipeGestureRecognizer上的"Press Duration"屬性可以多長時間才觸發長按事件,另外在搭配"Taps"與"Touches"屬,即可決定長按的次數和手指數才觸發長按事件



官方手勢參考資料 Link




檔案連結:UILongPressGestureRecognizer.zip