2011-09-30 77 views
-1

我想創建我自己的自定義按鈕,而不使用任何界面生成器。如何在不使用界面構建器的情況下創建自己的自定義按鈕?

其實我想設置所有我的屬性/屬性(像框架,顏色,大小,標籤等)分開在一個NSObject類。然後從我的UIView類我想繪製它們。

我該怎麼做,因爲我從來沒有使用NSObject類?

任何示例應用程序或示例來做到這一點?

+1

如果你想創建一個自定義按鈕,你至少應該從'繼承UIView'(如果你不想直接從'UIButton'繼承)。使它成爲'NSObject'的(直接)子類將會使事情變得複雜。 –

回答

3

其實,你可以繼承UIButton - 舉個例子,看看Fun With UIButtons and Core Animation Layers。這實在是太多了,你可以簡單地創建一個新的UIButton並設置其屬性:

UIButton *btn = [[UIButton alloc] initWithFrame:yourFrame] 
btn.backgroundColor = [UIColor redColor]; 
... 
[btn release;] 
1

檢查這個代碼:

UIButton *btn=[[UIButton alloc] initWithFrame:CGRectMake(152,0,150,128)];  
    [btn setBackgroundColor:[UIColor clearColor]]; 
    [btn setImage:actualImage forState:UIControlStateNormal]; 
    [btn setTag:1]; 
    [btn addTarget:self action:@selector(btnTouched:)forControlEvents:UIControlEventTouchDown]; 
    [self addSubview:btn]; 
    [btn release]; 
+1

你應該清理你的代碼以避免混淆,例如沒有'i'聲明,你將btn作爲子視圖添加到btn,沒有'copyOf_myGlobalArrayOfImageIds',你應該在代碼的末尾添加'[btn release];''。 – tilo

+0

@tilo:謝謝.. :) – rptwsthi

+1

你現在已經釋放它:)(你在第一行自動釋放它,並在最後一行再次釋放它) –

相關問題