mirror of
https://github.com/HackPlan/IQKeyboardManager.git
synced 2026-06-17 02:25:14 +08:00
- Enhanced demo project and added various examples demonstrating almost all properties of library. - Enhanced library Settings Controller. - Moved some contents of README.md file to other files.
97 lines
3.2 KiB
Objective-C
Executable File
97 lines
3.2 KiB
Objective-C
Executable File
//
|
|
// ViewController.m
|
|
// KeyboardTextFieldDemo
|
|
|
|
#import "TextSelectionViewController.h"
|
|
|
|
@interface TextSelectionViewController ()<UIPopoverPresentationControllerDelegate>
|
|
|
|
@property (nonatomic, strong) NSArray *data;
|
|
|
|
@end
|
|
|
|
@implementation TextSelectionViewController
|
|
|
|
@synthesize data = _data;
|
|
@synthesize tableView = _tableView;
|
|
|
|
- (void)viewDidLoad
|
|
{
|
|
[super viewDidLoad];
|
|
self.tableView.delegate = self;
|
|
self.tableView.dataSource = self;
|
|
_data = @[@"Hello", @"This is a demo code", @"Issue #56", @"With mutiple cells", @"And some useless text.",
|
|
@"Hello", @"This is a demo code", @"Issue #56", @"With mutiple cells", @"And some useless text.",
|
|
@"Hello", @"This is a demo code", @"Issue #56", @"With mutiple cells", @"And some useless text."];
|
|
}
|
|
|
|
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
|
|
{
|
|
return _tableView.rowHeight;
|
|
}
|
|
|
|
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
|
|
{
|
|
return _data.count;
|
|
}
|
|
|
|
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
|
|
{
|
|
NSString *identifier = [NSString stringWithFormat:@"%ld%ld",(long)indexPath.section,(long)indexPath.row];
|
|
|
|
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identifier];
|
|
|
|
if (cell == nil)
|
|
{
|
|
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];
|
|
cell.backgroundColor = [UIColor clearColor];
|
|
[cell setSelectionStyle:UITableViewCellSelectionStyleNone];
|
|
|
|
UITextView *textView = [[UITextView alloc] initWithFrame:CGRectMake(5,7,135,30)];
|
|
textView.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
|
|
textView.backgroundColor = [UIColor clearColor];
|
|
textView.text = _data[indexPath.row];
|
|
textView.dataDetectorTypes = UIDataDetectorTypeAll;
|
|
textView.scrollEnabled = NO;
|
|
textView.editable = NO;
|
|
[cell.contentView addSubview:textView];
|
|
}
|
|
|
|
return cell;
|
|
}
|
|
|
|
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
|
|
{
|
|
if ([segue.identifier isEqualToString:@"SettingsNavigationController"])
|
|
{
|
|
segue.destinationViewController.modalPresentationStyle = UIModalPresentationPopover;
|
|
segue.destinationViewController.popoverPresentationController.barButtonItem = sender;
|
|
|
|
CGFloat heightWidth = MAX(CGRectGetWidth([[UIScreen mainScreen] bounds]), CGRectGetHeight([[UIScreen mainScreen] bounds]));
|
|
segue.destinationViewController.preferredContentSize = CGSizeMake(heightWidth, heightWidth);
|
|
segue.destinationViewController.popoverPresentationController.delegate = self;
|
|
}
|
|
}
|
|
|
|
- (UIModalPresentationStyle)adaptivePresentationStyleForPresentationController:(UIPresentationController *)controller
|
|
{
|
|
return UIModalPresentationNone;
|
|
}
|
|
|
|
-(void)prepareForPopoverPresentation:(UIPopoverPresentationController *)popoverPresentationController
|
|
{
|
|
[self.view endEditing:YES];
|
|
}
|
|
|
|
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
|
|
{
|
|
return YES;
|
|
}
|
|
|
|
- (BOOL)shouldAutorotate
|
|
{
|
|
return YES;
|
|
}
|
|
|
|
@end
|