UIPickerView.h
来源:互联网 发布:适合nodejs的cms 编辑:程序博客网 时间:2024/05/29 17:16
//
// UIPickerView.h
// UIKit
//
// Copyright (c) 2006-2012, Apple Inc. All rights reserved.
//
#import<Foundation/Foundation.h>
#import<CoreGraphics/CoreGraphics.h>
#import<UIKit/UIView.h>
#import<UIKit/UITableView.h>
#import<UIKit/UIKitDefines.h>
@protocolUIPickerViewDataSource, UIPickerViewDelegate;
NS_CLASS_AVAILABLE_IOS(2_0)@interface UIPickerView :UIView <NSCoding,UITableViewDataSource>
{
@private
NSMutableArray *_tables;
UIView *_topFrame;
NSMutableArray *_dividers;
NSMutableArray *_selectionBars;
id<UIPickerViewDataSource> _dataSource;
id<UIPickerViewDelegate> _delegate;
UIView *_backgroundView;
NSInteger _numberOfComponents;
@package
struct {
unsigned int needsLayout:1;
unsigned int delegateRespondsToNumberOfComponentsInPickerView:1;
unsigned int delegateRespondsToNumberOfRowsInComponent:1;
unsigned int delegateRespondsToDidSelectRow:1;
unsigned int delegateRespondsToViewForRow:1;
unsigned int delegateRespondsToTitleForRow:1;
unsigned int delegateRespondsToAttributedTitleForRow:1;
unsigned int delegateRespondsToWidthForComponent:1;
unsigned int delegateRespondsToRowHeightForComponent:1;
unsigned int delegateRespondsToCheckableForRow:1;
unsigned int showsSelectionBar:1;
unsigned int allowsMultipleSelection:1;
unsigned int allowSelectingCells:1;
unsigned int soundsDisabled:1;
unsigned int usesCheckedSelection:1;
unsigned int skipsBackground:1;
} _pickerViewFlags;
}
@property(nonatomic,assign)id<UIPickerViewDataSource> dataSource; // default is nil. weak reference
@property(nonatomic,assign)id<UIPickerViewDelegate> delegate; // default is nil. weak reference
@property(nonatomic) BOOL showsSelectionIndicator; // default is NO
// info that was fetched and cached from the data source and delegate
@property(nonatomic,readonly)NSInteger numberOfComponents;
- (NSInteger)numberOfRowsInComponent:(NSInteger)component;
- (CGSize)rowSizeForComponent:(NSInteger)component;
// returns the view provided by the delegate via pickerView:viewForRow:forComponent:reusingView:
// or nil if the row/component is not visible or the delegate does not implement
// pickerView:viewForRow:forComponent:reusingView:
- (UIView *)viewForRow:(NSInteger)row forComponent:(NSInteger)component;
// Reloading whole view or single component
- (void)reloadAllComponents;
- (void)reloadComponent:(NSInteger)component;
// selection. in this case, it means showing the appropriate row in the middle
- (void)selectRow:(NSInteger)row inComponent:(NSInteger)component animated:(BOOL)animated; // scrolls the specified row to center.
- (NSInteger)selectedRowInComponent:(NSInteger)component; // returns selected row. -1 if nothing selected
@end
@protocol UIPickerViewDataSource<NSObject>
@required
// returns the number of 'columns' to display.
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;
// returns the # of rows in each component..
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;
@end
@protocol UIPickerViewDelegate<NSObject>
@optional
// returns width of column and height of row for each component.
- (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component;
- (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component;
// these methods return either a plain NSString, a NSAttributedString, or a view (e.g UILabel) to display the row for the component.
// for the view versions, we cache any hidden and thus unused views and pass them back for reuse.
// If you return back a different object, the old one will be released. the view will be centered in the row rect
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component;
- (NSAttributedString *)pickerView:(UIPickerView *)pickerView attributedTitleForRow:(NSInteger)row forComponent:(NSInteger)componentNS_AVAILABLE_IOS(6_0); // attributed title is favored if both methods are implemented
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view;
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component;
@end
- UIPickerView.h
- UIPickerView
- UIPickerView
- UIPickerView
- UIPickerView
- UIPickerView
- UIPickerView
- UIPickerView
- UIPickerView
- UIPickerView
- UIpickerView
- UIPickerView
- UIPickerView
- UIPickerView
- UIPickerView
- UIpickerview
- UIPickerView
- UIpickerView
- C和指针
- 《Java TCP/IP Socket编程》读书笔记(11)
- Clover 的使用方法解读
- Python 杂记
- android ImageView 频繁切换图片 OOM
- UIPickerView.h
- DB2用户及授权
- 二叉树的层次遍历
- android的广播broadcast和receiver && 广播接收器优先级的深入分析
- Python模块包中__init__.py文件的作用
- 《Java TCP/IP Socket编程》读书笔记(12)
- SqlServer索引原理分析
- SQL一个外连接查询的理解
- Python Import机制