UI基礎 手勢解鎖簡單實現

2021-07-06 10:31:14 字數 1665 閱讀 7753

手勢解鎖可以說是手機的乙個標誌了,幾乎所有涉及到安全的軟體都有手勢解鎖功能。其實實現起來也相當簡單,雖然思路比較簡單,但是對我來說注意點還是比較多的。

根控制器view被我自定義乙個新的view代替了:

//

// bgview.m

// 05-手勢解鎖

//// created by styshy on 15/11/4.

//#import "bgview.h"

@implementation bgview

// 在drawrect中繪製

- (void)drawrect:(cgrect)rect

@end

主要的手勢解鎖在lockview這個類當中,部分**有注釋

//

// lockview.m

// 05-手勢解鎖

//// created by styshy on 15/11/4.

//#import "lockview.h"

@inte***ce lockview ()

@property (nonatomic,strong) nsmutablearray *buttons;

@property (nonatomic,assign) cgpoint curp;

@end

@implementation lockview

// 懶載入

- (nsmutablearray *)buttons

return _buttons;

}// 新增按鈕

- (void)awakefromnib

}// 按鈕的高亮狀態是系統自動達到的,當使用者長按按鈕的時候就會達到高亮狀態

// 按鈕的選中狀態必須通過**手動達到

- (void)btnclick:(uibutton *)btn

// 布局按鈕

- (void)layoutsubviews

}// 手勢移動

- (void)touchesmoved:(nsset *)touches withevent:(uievent *)event}}

// 重回

[self setneedsdisplay];

}// 手勢結束

- (void)touchesended:(nsset *)touches withevent:(uievent *)event

nslog(@"%@",str);

// 清空所有的選中按鈕

[self.buttons removeallobjects];

// 重新繪圖

[self setneedsdisplay];

}// 繪圖

- (void)drawrect:(cgrect)rectelse

}[path addlinetopoint:self.curp];

[path setlinewidth:8];// 設定線寬

[[uicolor greencolor] set];//設定線條顏色

[path stroke];//繪製空心線條

}@end

效果圖展示:

iOS 小的Demo 簡單的手勢解鎖實現

晴川歷歷漢陽樹,芳草萋萋鸚鵡洲 好運蛋 先上效果圖 密碼是3548 前奏 這個可以說是在簡易的畫板之上,增加一些判斷就可以完成,首先我們肯定需要九個圓圈的放置,我思考的就是用九個 uiview 迴圈的方法布置一下各自位置 畫圖 乙個簡單的想法就是,在九個 view 所屬的大 view 畫線,只要經過...

android利用paint 實現手勢解鎖

1 自定義view 2 mycycle類對座標進行計算 package com.android.view public class mycycle public void setr float r public boolean isontouch public void setontouch boo...

UI基礎學習之(十四) 手勢

接上篇 transform 手勢配合使用transform 手勢可以新增在任何想要的地方,一般新增在imageview上。gesturerecognizer 手勢識別器 使用手勢,首先要確定控制項的手勢互動式開啟的 開啟互動 self.rv.imv.userinteractionenabled ye...