1. Introduction:
- The assignment involved creating a simple mobile application using React Native that welcomes a user when they enter their name. The objective was to implement basic navigation between screens and demonstrate the use of user input and dynamic styling.
2. Development Environment Setup:
- I set up my development environment by installing Node.js, npm (or yarn), and Expo CLI.
- I used Expo CLI to create a new React Native project.
3. Project Structure:
- The project structure consisted of several files and directories, including:
App.js: Main entry point of the application.HomeScreen.js: Component for the home screen.WelcomeScreen.js: Component for the welcome screen.- Other directories for assets, configurations, etc.
4. Implementation Details:
4.1 Home Screen:
- Implemented a simple form using TextInput to capture the user's name.
- Implemented navigation to the Welcome Screen upon pressing the Enter button.
4.2 Welcome Screen:
- Displayed a welcoming message along with the user's name.
- Utilized dynamic styling for the background color.
5. Navigation Setup:
- Used React Navigation to set up navigation between screens.
- Configured a Stack Navigator to handle navigation.
6. Styling and Design:
- Chose vibrant colors for both screens to enhance visual appeal.
- Used basic styling to ensure a clean and user-friendly interface.
7. Testing and Debugging:
- Tested the application on both iOS and Android devices/emulators using Expo Go.
- Resolved minor styling issues and ensured proper functionality.
8. Building the APK:
- Used Expo CLI to build the APK for Android.
- Followed the build process and downloaded the generated APK file.
- Tested the APK on a physical Android device to verify functionality.
9. Conclusion:
- Overall, the assignment provided a valuable opportunity to apply React Native concepts in a practical project.
- I gained hands-on experience with navigation, user input, and dynamic styling in React Native.
- The project helped solidify my understanding of mobile app development using React Native.