iOS懸浮在應用首頁可吸附在邊緣的小按鈕

2021-07-23 20:19:22 字數 1822 閱讀 3985

類似於蘋果手機首頁那個半透明的懸浮小按鈕。

簡單來講,就是先定義乙個按鈕,然後新增移動手勢uipangesturerecognizer,通過手勢移動狀態(began、changed、ended)來控制按鈕的位置、以及吸附在哪個邊緣。

我個人目前的實現方法就是先定義乙個控制器,在該控制其中新增懸浮按鈕,然後讓需要用到按鈕的控制器繼承該控制器。

懸浮小按鈕可以是任意的uiview子類檢視。

直接來看**吧!

//設定懸浮按鈕

- (void)configsuspendbutton

);}

在按鈕上面新增了乙個移動手勢uipangesturerecognizer
//建立移動手勢事件

uipangesturerecognizer *panrcognize=[[uipangesturerecognizer alloc] initwithtarget:self action:@selector(handlepangesture:)];

[panrcognize setminimumnumberoftouches:1];

[panrcognize setenabled:yes];

[panrcognize delaystouchesended];

[panrcognize cancelstouchesinview];

[self

.spbutton addgesturerecognizer:panrcognize];

移動手勢事件處理(最主要的一段**)
/*

* 懸浮按鈕移動事件處理

*/- (void)handlepangesture:(uipangesturerecognizer *)recognizer

break

; case uigesturerecognizerstateended:

else

}elseelse

}}elseelse

}elseelse}}

if (stoppoint.x - ksuspendbtnwidth/2.0

<= 0)

if (stoppoint.x + ksuspendbtnwidth/2.0 >= susscreenw)

if (stoppoint.y - ksuspendbtnwidth/2.0

<= 0)

if (stoppoint.y + ksuspendbtnwidth/2.0 >= susscreenh)

[uiview animatewithduration:0.5 animations:^];

}break

; default:

break

; }

[recognizer settranslation:cgpointmake(0, 0) inview:self.view];

}

可直接使用demo裡面的類檔案suspendbuttonviewcontroller

直接集繼承該類檔案,重寫下面兩個方法即可:

- (void)suspendbtnclicked:(id)sender;

- (void)configsuspendbutton;

記得要寫[super configsuspendbutton];

截圖如下

IOS 應用懸浮窗

在應用的檢視的最頂層新增乙個uiwindow,用這個uiwindow 充當懸浮窗,給uiwindow新增移動的手勢監聽,讓懸浮窗隨著手指移動,釋放的時候,讓它以動畫的方式靠邊 懸浮窗測試 建立乙個懸浮視窗 mwindow assistivetouch alloc initwithframe cgre...

ios新增全域性懸浮按鈕 iOS 懸浮按鈕

想要做出懸浮在螢幕上的按鈕效果,按鈕可以隨便移動位置,其實很簡單的,沒有想象中的那麼難,其中有兩種方法可以做出這樣的效果.看下面,一一介紹兩種方法,根據需要,選擇適合自己的呦 效果圖呈現 接下來看 1.建立button 2.新增手勢,移動button 下面我就將我寫的 全部放在這,想試試的親可以貼上...

Js Css實現滑鼠懸浮在特定位置,顯示提示資訊

想實現的效果就是資料懸浮在 上時出現乙個div,有乙個解釋說明,實現效果如下 1 首先實現 樣式,在 解壓後找到css資料夾下font awesome.min.css 在html頁面進行引用 link href static font css font awesome.min.css rel sty...