官术网_书友最值得收藏!

Overview

One of the main requirements when building an image sharing app is an appealing design. We will follow the design patterns for some of the most popular image sharing apps, adapting those patterns for each platform while trying to reuse as much code as possible taking advantage of React Native's cross-platform capabilities.

Let's first take a look at the user interface in iOS:

Overview

The main screen shows a simple header and a list of images, including the user picture, name, and a More icon to share the image. At the bottom, the tabbed navigation displays three icons representing the three main screens: All Images, My Images, and Camera.

Note

All images used for this sample app are free to be used in any form.

When a user presses the More icon for a specific image, the Share menu will be displayed:

Overview

This is a standard iOS component. It doesn't make much sense to use it on a simulator, it can be better tested on an actual device.

Let's take a look at the second screen, My Images:

Overview

This is a grid representation of all the images uploaded by the current user, which can be updated by the next screen, Camera:

Overview

The iOS simulator doesn't include support for any camera, so this feature is again better tested on an actual device, although react-native-camera is fully usable and will return fake data when accessed. We will use a static image for testing purposes.

That's all for iOS; let's move now to the Android version:

Overview

As Android encourages drawer-based navigation instead of tabs, we will include a drawer menu icon in the header and will also make the camera available through a different icon.

Overview

As with the iOS Share menu, Android has its own controller, so we will take advantage of this feature and include it whenever a user taps on the More icon on a specific image:

Overview

When a user taps on the drawer menu icon, the menu will be displayed, revealing the three available screens. From here, the user can navigate to the My Images screen:

Overview

Finally, the camera screen will also be accessible through the drawer menu:

Overview

The Android Simulator includes a camera simulation consisting of a colored moving square, which can be used for testing. Instead, we will stick with the fixed image we used in the iOS version for consistency reasons.

We will be covering the following topics in this lesson:

  • Redux in React Native
  • Using the camera
  • Platform-specific code
  • Drawer and tabbed navigation
  • Sharing data with other apps
主站蜘蛛池模板: 门源| 桦甸市| 吉木乃县| 禹州市| 桂东县| 保康县| 当涂县| 和林格尔县| 元氏县| 扎赉特旗| 延川县| 郯城县| 固阳县| 五原县| 澄迈县| 富裕县| 鄢陵县| 乌什县| 连江县| 紫阳县| 陈巴尔虎旗| 蒙山县| 遵化市| 含山县| 永福县| 南康市| 苍南县| 曲水县| 新河县| 肇庆市| 建平县| 全椒县| 凤庆县| 怀仁县| 延长县| 六枝特区| 清河县| 廊坊市| 平乐县| 长春市| 宝丰县|