Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

Where can I find the source code of of ios4 ?

Hi ,

Where can I find the source code of specific widget inside ios4?

for exmaple , the code of UIDatePicker ,Segment Control,etc ...

Thanks advance for your help.

iOS 4

Posted on Dec 23, 2010 8:45 PM

Reply
5 replies

Dec 26, 2010 7:04 PM in response to camino99

camino99 wrote:
Hi ,

Where can I find the source code of specific widget inside ios4?

for exmaple , the code of UIDatePicker ,Segment Control,etc ...

Thanks advance for your help.
camino99 wrote:
Hi ,

Where can I find the source code of specific widget inside ios4?

for exmaple , the code of UIDatePicker ,Segment Control,etc ...



You can look at the headers for any framework via Xcode...just toggle to expand and then select to view on the right... Go to the iOS Dev Center login and study the examples in the documentation as well...
-=-
Picker:

//
// UIPickerView.h
// UIKit
//
// Copyright 2006-2010 Apple Inc. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <CoreGraphics/CoreGraphics.h>
#import <UIKit/UIView.h>
#import <UIKit/UIKitDefines.h>

@protocol UIPickerViewDataSource, UIPickerViewDelegate;

UIKIT CLASS_AVAILABLE(20) @interface UIPickerView : UIView <NSCoding>
{
@private
NSMutableArray *_tables;
UIView *_topFrame;
NSMutableArray *_dividers;
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 delegateRespondsToWidthForComponent:1;
unsigned int delegateRespondsToRowHeightForComponent:1;
unsigned int showsSelectionBar:1;
unsigned int allowsMultipleSelection:1;
unsigned int allowSelectingCells:1;
unsigned int soundsDisabled: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 UIString, 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;
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view;

- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component;

@end

Where can I find the source code of of ios4 ?

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple ID.