Is there a way to reduce the time taken (long press) to initiate the drag of a collection view cell? - swift

I've implemented drag and drop between three collection views using UICollectionViewDragDelegate and UICollectionViewDropDelegate and it seems to be working okay. The only issue is, I don't like the long press that's required to initiate the drag session. I can't find anything in the docs explaining how to override this behaviour so was wondering if one of you fine folks could help me out?
I can see a solution proposed by julsh in the following question - Ability to shorten UIDragInteraction's long press timing - which looks great... But I don't know how to implement it against a collection view cell?
If anyone has any ideas I'd really appreciate the help.

I found this which should help. I ran into the same problem and it turns out that the UICollectionView holds the gesture recognizers.

Related

Custom PickerView froze up (With sample project)

Background: I have been wanting a PickerView that is exactly matches that of Safari. I looked through many Gits and found none that work quite as exactly. I decided to build my own. It is complete now, but there is a bug that would not go away.
Problem: If you run the sample project you will be greeted with 2 text fields.
Tap on one of the textfields - it brings up the BTPickerView. Everything works just as you would expect.
Choose the fourth choice, then press done.
Tap on the same textfield. This time, the debug log will show you that you have executed an infinite loop, which freezes the app.
Question: What did I do to cause it? And how do I fix it?
I have tried everything to boil it down. It comes down to this and I could not go any further. Please advise.
Edit: Here is the sample code you can download in case anyone missed the blue link above.
The issue seems to be with the constraints in BTPickerLabel. If you temporarily disable the constraints from BTPickerLabel, code works fine. Enforcing constraint might trigger the reloading of entire picker view infinitely. I hope it should help you to fix the problem.

How would one implement a sliding 2 button menu like this from Lift?

http://imgur.com/3ZBCsDn
Can't post the image on the site but there it is.
I have been trying to find if this is a template or a separate nib file ala the page turn animation. Any help would be greatly appreciated.
That is called a UIActionSheet. It is created entirely in code, so it's limited to some pretty simple stuff (i.e. a few buttons, one of which is the cancel button, and one of which can be marked "destructive"). Just consult the documentation for the UIActionSheet class; it tells you all there is to know about it.
Also, here's the discussion in my book:
http://www.apeth.com/iOSBook/ch26.html#_action_sheet

Providing un-intrusive messages on an iPhone

This is kind of a silly question, but I cannot find the answer as I don't know the terms with which to search for it.
I am looking for a simple way of giving a 'status' message like 'Data updated' to the user without necessarily interrupting what he/she is doing (but have a option I guess in some instances to tab it an perform an action).
For example; some Apps give a rounded square semi-transparent with 'Lock screen/rotation' when an iPhone is rotated, I am look for something similar (or like the square box 'Build Complete in Xcode 4').
Is there an easy way of doing this?
Thanks a million in advance!
https://github.com/myell0w/MTStatusBarOverlay
MTStatusBarOverlay adds very subtle text to the phone's status bar. If you're looking for something a little more noticiable, try:
https://github.com/jdg/MBProgressHUD
As #kubi has pointed out, MTStatusBarOverlay is a good one, and I've passed Apple reviewer inspection with it. However I just found something that looks fraking awesome...
Tweetbot-Like Alert Panels (Blog), and the repository is MKInfoPanelDemo at Github.
Create a view that shows your message nicely, add it to the window, and start a UIView animation which makes it fade away. In the animation ended handler (delegate or block) remove the view.

Programmatically Dismiss UIDocumentInteractionController OpenInMenu?

I am having much difficulty being able to dismiss (programmatically) my UIDocumentInteractionController's OpenIn Menu (Using the appropriate - dismissMenuWhatever method from the docs). I just can't seem to get it to work. Does anybody have any suggestions? Maybe I have an inadequate intelligence level? I am beginning to question the meaning of life.
make sure you are calling dimissMenuAnimated: on the right UIDocumentInteractionController. Maybe post some code if you still can't figure it out.

How to Create the Highlight/Note Popup Buttons from the iPhone Kindle

I am wondering how Amazon did the highlight/note popup buttons in the Kindle app. After reading about UIPasteboard, UIMenuController, UIResponder, and UIResponderStandardEditActions, I am able to turn on or off standard edit actions (i.e. copy, cut, paste, select, and selectAll). However I haven't found a way to add a custom action yet. I would really appreciate it if I could get a pointer.
Thanks in advance!
Chris
(source: sampletheweb.com)
Edited by balexandre (added image instead link)
It looks like Amazon implemented their own custom view that mimicked the appearance of UIMenuController. I believe they did this rather than use SPI because if you click and hold on the Highlight cell, the arrow does not highlight, when it does in the real UIMenuController.
I don’t think there is a public interface to these controls, you’d probably have to code them yourself. (Or maybe figure out the private API, but that’s a slippery slope.) I am not sure about that, though, maybe somebody will prove me wrong.
That's a good point about the arrow part of the Notes/Highlight popup menu not highlighting, so they must be implementing their own.
However they are also obviously using a UIWebView, because it's recognizing tap and hold and they can highlight the text, and you can't get touch events from a UIWebView, much less get the information about what's selected. So how are they doing that?
This would be very useful for us to be able to do as well.
Use DTMenuController http://www.drobnik.com/touch/2010/01/dr-touchs-parts-store/
Costs 100 EUR ^_^
Custom menu items can be added via the UIMenuController's menuItems property. See Apple's UIMenuController docs.
the javascript part can be managed with jQuery, that's a fair simple and powerful library. i'm using it for resizing and rearranging things in a webview and it works great :)