Matisse
A well-designed local image and video selector for Android
... Matisse from Activity or Fragment. Meanwhile you should receive results in the corresponding onActivityResult() callback. If you want a fixed span count, you can do it. The span count will stay the same when orientation changes. If you expect a grid size which will be flexible fitting different screens, you can also pull that off. This value won't necessarily be applied cause the photo grid should fill the view container.