//創(chuàng)建自定義按鈕
UIButton*btn_click = [UIButtonbuttonWithType:UIButtonTypeCustom];
//創(chuàng)建普通狀態(tài)按鈕圖片
[btn_clicksetImage:[UIImageimageNamed:@"home"]forState:UIControlStateNormal];
//創(chuàng)建高亮或選中狀態(tài)按鈕圖片
[btn_clicksetImage[UIImageimageNamed:@"homeselected"]forState:UIControlStateHighlighted]
//設(shè)置按鈕普通狀態(tài)標(biāo)題
[btn_clicksetTitle:@"我的主帖"forState:UIControlStateNormal];
//設(shè)置按鈕字體
btn_click.titleLabel.font= [UIFontsystemFontOfSize:14];
//設(shè)置按鈕普通狀態(tài)標(biāo)題顏色
[btn_clicksetTitleColor:[UIColorredColor]forState:UIControlStateNormal];
//設(shè)置按鈕高亮或選中狀態(tài)標(biāo)題顏色
[btn_clicksetTitleColor:[UIColoryellowColor]forState:UIControlStateHighlighted];
//設(shè)置按鈕背顏色
[btn_clicksetBackgroundColor:[UIColorgrayColor]];
//按鈕按下后的模糊狀態(tài)
[btn_clicksetAdjustsImageWhenHighlighted:NO];
//按鈕點(diǎn)擊事件
[btn_clickaddTarget:selfaction:@selector(clickAction:)forControlEvents:UIControlEventTouchUpInside];
//按鈕坐標(biāo)和尺寸
btn_click.frame=CGRectMake(0,200,APP_WIGHT/2,49);
//按鈕圖片和標(biāo)題總高度
CGFloattotalHeight =(btn_click.imageView.frame.size.height+btn_click.titleLabel.frame.size.height);
//設(shè)置按鈕圖片偏移
[btn_clicksetImageEdgeInsets:UIEdgeInsetsMake((totalHeightbtn_click.imageView.frame.size.height),0.0,0.0, -btn_click.titleLabel.frame.size.width)];
//設(shè)置按鈕標(biāo)題偏移
[btn_clicksetTitleEdgeInsets:UIEdgeInsetsMake(0.0, btn_click.imageView.frame.size.width, -(totalHeight - btn_click.titleLabel.frame.size.height),0.0)];
//加載按鈕到視圖
[self.viewaddSubview:btn_click];
關(guān)于UIButton咬腕,既可以采用setBackgroundImage 來(lái)設(shè)置底部圖片壶硅,同時(shí)也可以采用??setImage方法徒探;兩者還是有一定區(qū)別的瓦呼;
首先setBackgroundImage,image會(huì)隨著button的大小而改變测暗,圖片自動(dòng)會(huì)拉伸來(lái)適應(yīng)button的大小央串,這個(gè)時(shí)候仍然可以設(shè)置button的title,title默認(rèn)在button中間碗啄,image不會(huì)擋住title质和;
相反的的setImage,圖片不會(huì)進(jìn)行拉伸稚字,原比例的顯示在button上饲宿,此時(shí)再設(shè)置title厦酬,title默認(rèn)顯示在圖右邊,因此可以根據(jù)需求選中方法瘫想;