아이폰어플개발정보2010. 9. 12. 21:18
아이폰 어플 개발에서 TableView 넣는 방법 간단 정리

1. UIView 밑에 TableView 생성


2. TableView 클릭 + 컨트롤키누르고 file's owner로 드래그 datasource,delegate 2개 클릭


3. 필수함수인 2개를 코딩



- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

{

static NSString *cIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cIdentifier];

if(cell == nil){

cell = [[[UITableViewCellalloc]

initWithStyle:UITableViewCellStyleDefaultreuseIdentifier:cIdentifier]

autorelease];

}

cell.textLabel.text = @"table";

return cell;

}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

{

return5;

}




출처 : http://blog.naver.com/PostList.nhn?blogId=hana_815¤tPage=49
Posted by 오늘마감

댓글을 달아 주세요

오브젝트C2010. 9. 3. 01:14
Objective-C 간단 정리.

■ 오브젝트의 생성 (원문)


모든 오브젝트는 메모리의 Heap에 할당된다.
스택에 저장되는 오브젝트는 없다.  => Objective-C는 심플함을 추구하기 때문에.


이 강의에 OOP의 간략한 개념과 용어가 나오지만 다른언어와 같기때문에 생략한다.


 

■ 용어
Message expression
[receiver method: argument] <= 이 전체를 메세지 표현이라고 한다.
Message
[receiver method: argument] <= 메소드 이후를 메세지라고 한다.
Selector
[receiver method: argument] <= 메소드와 무슨차이냐고 한다면... 메소드를 셀렉터라고도 한다.
Method
The code selected by a message

■ 셀렉터 정의
Selector는 메소드를 인식할 수 있는 이름으로 SEL 이라는 타입으로 정의할수 있다.
SEL action = [button action];


함수포인터와 비슷한 개념이라고 생각하면 된다.


셀렉터의 이름에는 콜론을 포함하여야 한다.

-(void)setName:(NSString *)name age:(int)age;
위의 메소드를 셀렉터로 정의하려면 아래와 같이 된다.
SEL sel = @selector(setName:age:);


■ 셀렉터 활용

오브젝트가 셀렉터에 응답하는지 알아볼 수 있다. 강의1-과제B의 4번에 해당하는 내용이다.
id obj;
SEL sel = @selector(start:);
if ([obj respondsToSelector:sel]) {
    [obj performSelector:sel withObject:self]
}


셀렉터를 이용한 아래와 같은 디자인패턴을 코코아에서 많이 찾아볼 수 있다.
-(void)setTarget:(id)target;
-(void)setAction:(SEL)action;


 

■ description 메소드

모든 오브젝트의 슈퍼클래스인 NSObject안에 구현되어 있다.
- (NSString *)description;


이 메소드를 오버라이드하여 클래스의 상세 내용을 돌려주도록 하면
디버깅할때 매우 유용하다.

[NSString stringWithFormat: @”The answer is: %@”, myObject];


아래와 같이 로그로 출력할 수 있다.
NSLog([anObject description]);


 

■ Foundation Framework


코코아 프레임워크는 많은 유용한 소스들의 집합체이다.
Foundation Framework는 그중 가장 기초가 되는 부분이며 아래 내용을 포함한다.


• 값와 컬렉션 클래스
• User 디폴트
• 아카이빙
• 통지 (Notifications)
• Undo 매니져
• Tasks, 타이머, 스래드
• 파일 시스템, 파이프, I/O, 번들


NSObject - 루트클래스이며 메모리관리, 오브젝트 비교, introspection 을 구현한다.
NSString - 유니코드를 지원하기 때문에 코코아에서 “char *” 대신 사용한다.

 * 편집 가능한 String은 NSMutableString이다.

정수 - NSString은 편집이 불가능 하기 때문에 NSString의 인스턴스가 바로 정수이다.

NSNumber - int, double, float 등을 캡슐화한 클래스이다. 
 * 숫자를 컬렉션에 저장하기 위해선 NSNumber로 생성해야 한다.

NSData / NSMutableData - 임의의 바이트집합
NSDate / NSCalendarDate - 시간과 날짜 관리

Objective C에서는 편집 가능 불가능 두가지 오브젝트를 따로 두고 있다.


예를 들어 컬렉션에는 Array/Dictionary/Set 이 있는데 이 세가지 모두 편집 가능 타입과 불가능 타입이 있다.


편집 불가능: NSArray, NSDictionary, NSSet
편집 가능: NSMutableArray, NSMutableDictionary, NSMutableSet


편집 불가능 컬렉션은 위험부담없이 공유할 수 있으며 원치않는 변경을 방지할 수 있다.
편집 가능 컬렉션들은 대체로 약간의 퍼포먼스 오버헤드가 있다.

<컬렉션>
Array - 오브젝트를 순차적으로 저장
Dictionary - 키/값의 세트로 저장
Set - 유니크 오브젝트가 비순차적으로 저장되어 있는 구조

더 자세한 내용은 아래 링크를 참조하라고 나와있다.

http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC



출처 : http://blog.naver.com/PostView.nhn?blogId=katchup00&logNo=10075952516
Posted by 오늘마감

댓글을 달아 주세요

아이폰기본사용2010. 8. 26. 07:57

6월 19일 아이폰(iPhone) 3GS가 미국을 비롯한 유럽 몇 개국에서 정시 발매를 시작했습니다. 정식 출시되기 전에 이미 3GS 사진이 유출되기도 했었습니다. 그런데 이번에는 출시된 지 만 하루가 지나기도 전에 3GS 전체 분해 과정이 사진과 함께 자세히 올라왔습니다. 분해 과정 설명도 비교적 자세하게 잘 해 놓았습니다. 분해 과정을 설명해 놓은 곳은 Rapidrepair 라는 애플 제품 및 ZUNE, XBOX, 플레이스테이션, 닌텐도 전문 수리 사이트입니다. 영문 설명과 함께 보다 자세한 분해 과정을 보시려면 이곳 을 클릭해 주세요. ^^




#1 - LCD 스크린, #2 - 디지털 변환 장치, #3 - 이어(Ear) 스피커, #5 - 헤드폰 잭, #6 - 무선 
P.S. #3 번은 #1번과 #2번 아래에 숨어 있다. 



이것이 배터리입니다. 배터리의 지속 시간을 문제삼는 사람들이 많아서 크기가 많이 작을 줄 알았는데 생각보다 많이 작지는 않네요.  
배터리 정보는 다음과 같습니다. 
APN: 616-0434
VPN: APPLE-08-003-01(GG)
Li-ion Polymer Battery: 3.7V 4.51Whr


드디어 완전히 다 분해한 모습입니다. 

왼쪽이 3GS, 오른쪽이 3G 시스템 보드이다. 

사진만 봐도 엄청 복잡하네요. 저를 비롯한 보통 사람들은 분해 엄두도 못낼 정도로 복잡해 보입니다. 

CPU - Samsung
339S0073ARM
K2132C2P0-50-F
0N1480911
APL0298
N1TVY0Q 0919

NAND Flash Memory - Toshiba TH58NVG702ELA89
IA8816
TAIWAN
09209AE

System Memory - 337S3754
CMA
G0919
5Y9307885E4

Infineon - 36MY1EE
A9177314
Z171033B

iPhone 3G S                           Palm Pre CPU Samsung S5PC100 Texas Instruments OMAP 3430 ARM Cortex A8 600 MHz, PowerVR SGX graphics ARM Cortex A8 600MHZ, PowerVR SGX 530 (GPU), 430MHz C64x, DSP and ISP (Image Signal Processor) Baseband Processor Updating soon Qualcomm MSM6801A Storage Internal 16/32 GB Internal 8 GB Memory 256 MB RAM 256MB DDR2  LCD 3.5-inch 480-by-320-pixel at 163 ppi Multi-Touch display 3.1-inch 480-by-320-pixel Multi-Touch display Connectivity
UMTS/HSDPA (850, 1900, 2100 MHz)
UMTS/HSDPA (1900, 2100 MHz) GSM/EDGE (850, 900, 1800, 1900 MHz) GSM/EDGE (850, 900, 1800, 1900 MHz)


iPhone 2G iPhone 3G iPhone 3G S Palm Pre CPU Baseband Processor Storage Memory LCD Battery Connectivity Size Camera 
 


출처 : http://blog.naver.com/PostView.nhn?blogId=baek2187&logNo=150074791078
Posted by 오늘마감

댓글을 달아 주세요