項(xiàng)目里有對話窗口的頁面 當(dāng)時著急寫程序 只是簡單的監(jiān)聽了鍵盤位置的變化 inputBar的動畫一直和鍵盤的動畫不是很協(xié)調(diào)
成都創(chuàng)新互聯(lián)公司成都網(wǎng)站建設(shè)按需求定制開發(fā),是成都網(wǎng)站維護(hù)公司,為塑料袋提供網(wǎng)站建設(shè)服務(wù),有成熟的網(wǎng)站定制合作流程,提供網(wǎng)站定制設(shè)計服務(wù):原型圖制作、網(wǎng)站創(chuàng)意設(shè)計、前端HTML5制作、后臺程序開發(fā)等。成都網(wǎng)站設(shè)計熱線:028-86922220最近看著很是難受 發(fā)現(xiàn)微信這點(diǎn)做的很好 然后仔細(xì)研究了鍵盤willChange的通知內(nèi)容 發(fā)現(xiàn)兩個參數(shù)沒有使用 不過這兩個參數(shù)貌似只適用下面用的這種動畫方式 之前我一直用帶有回掉的動畫 結(jié)果設(shè)置之后還是不同步最后發(fā)現(xiàn)這個方式能夠?qū)崿F(xiàn)完全同步 最終算是完美解決吧 給大家分享一下
-(void)changeKeyBoard:(NSNotification *)aNotifacation
{
NSNumber *duration = [aNotifacation.userInfoobjectForKey:UIKeyboardAnimationDurationUserInfoKey];
NSNumber *curve = [aNotifacation.userInfoobjectForKey:UIKeyboardAnimationCurveUserInfoKey];
NSValue *keyboardBeginBounds=[[aNotifacation userInfo]objectForKey:UIKeyboardFrameBeginUserInfoKey];
CGRect beginRect=[keyboardBeginBounds CGRectValue];
NSValue *keyboardEndBounds=[[aNotifacation userInfo]objectForKey:UIKeyboardFrameEndUserInfoKey];
CGRect endRect=[keyboardEndBounds CGRectValue];
CGFloat deltaY=endRect.origin.y-beginRect.origin.y;
[UIViewbeginAnimations:nilcontext:nil];
[UIViewsetAnimationBeginsFromCurrentState:YES];
[UIViewsetAnimationDuration:[duration doubleValue]];
[UIViewsetAnimationCurve:[curve intValue]];
//更改聊天窗口table的inset 位置 inputbar位置
[UIViewcommitAnimations];
}
附上截圖
軟件 《測測》
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。