+1
Nhờ mọi người hướng dẫn giúp mình tính năng @username giống app Zalo.
Mình đang tìm hiểu chức năng @username khi chat như app Zalo. Mọi người có thể hướng dẫn mình hay không?
Thêm một bình luận
1 CÂU TRẢ LỜI
+1
Bạn có thể search với từ khóa mention
hoặc hashtag
sẽ có rất nhiều bài hướng dẫn.
Nếu bạn thích tự làm thì bạn có thể làm theo các bước :
- Tạo 1 TableViiewController, content là list tên bạn bè
- Bắt trigger khi người dùng input ký tự
@
vào TextField thì hiển thị viewcontroller kia lên (add vào trong 1ContainerView
) - Khi người dùng nhập ký tự, bạn chuyển ký tự đó sang TableViewController, thực hiện việc search và reload lại tableView
- Khi người dùng bấm vào tableViewCell thì bạn insert tên đã chọn sang TextField
Mình đã làm nhưng nảy sinh rất nhiều vấn đề nếu người dùng thêm, xóa, sửa bất cứ vị trí rất khó kiểm soát.
Bạn có thể sử dụng InputAccessoryView của UITextField.
- Implement collection view trên view đó tạo và tạo 1 block để cập nhật event khi user thao tác trên textbox. Còn list user thì bạn phải get về fill lên đó.
- Khi có thao tác @abc thì filter với keyword abc trong block kia và reload lại collection. Còn khi user select item trên list user thì dùng 1 delegate update ngược lại rồi fill vào text box đó.
- Khi filter thì filter theo name, còn khi nó đã chọn user rồi thì dùng user id để làm việc. Thêm sửa xoá trên text box là display name cũng không ảnh hưởng đến mention vẫn có thể notification đến người đó đc (trong block kia chỉ detect khi user enter @ mà thôi).