首页 > 其他分享 >第二次冲刺

第二次冲刺

时间:2024-06-19 18:31:44浏览次数:22  
标签:react const 冲刺 React home 组件 import 第二次

第二天冲刺任务目标与解决方案

任务目标:

  • 进行初步开发项目界面。
  • 上网查询项目所需的前后端技术。

遇到的问题:

  • 不会画导航栏。
  • 安卓原生组件需要美化。

导航栏设计与实现

导航栏设计原则

  1. 简洁清晰:确保导航栏内容简单易懂,使用清晰的图标和标签。
  2. 高对比度:提高可见性,方便老年人阅读。
  3. 易访问性:放置常用功能按钮,减少多层级导航。

导航栏技术实现

  1. 前端框架选择:

    • React Native:适合跨平台开发,提供丰富的组件和库。
    • Flutter:提供美观的UI组件,适合高质量的界面设计。
  2. 具体实现步骤:

    • React Native 示例:

      import React from 'react';
      import { View, Text, TouchableOpacity, StyleSheet } from 'react-native';
      import { createBottomTabNavigator } from '@react-navigation/bottom-tabs';
      import { NavigationContainer } from '@react-navigation/native';
      
      const HomeScreen = () => (
        <View style={styles.screen}>
          <Text>Home Screen</Text>
        </View>
      );
      
      const SettingsScreen = () => (
        <View style={styles.screen}>
          <Text>Settings Screen</Text>
        </View>
      );
      
      const Tab = createBottomTabNavigator();
      
      export default function App() {
        return (
          <NavigationContainer>
            <Tab.Navigator>
              <Tab.Screen name="Home" component={HomeScreen} />
              <Tab.Screen name="Settings" component={SettingsScreen} />
            </Tab.Navigator>
          </NavigationContainer>
        );
      }
      
      const styles = StyleSheet.create({
        screen: {
          flex: 1,
          justifyContent: 'center',
          alignItems: 'center',
        },
      });
      
    • Flutter 示例:

      import 'package:flutter/material.dart';
      
      void main() {
        runApp(MyApp());
      }
      
      class MyApp extends StatelessWidget {
        @override
        Widget build(BuildContext context) {
          return MaterialApp(
            home: MyHomePage(),
          );
        }
      }
      
      class MyHomePage extends StatefulWidget {
        @override
        _MyHomePageState createState() => _MyHomePageState();
      }
      
      class _MyHomePageState extends State<MyHomePage> {
        int _selectedIndex = 0;
      
        static const List<Widget> _widgetOptions = <Widget>[
          Text('Home Page', style: TextStyle(fontSize: 35, fontWeight: FontWeight.bold)),
          Text('Settings Page', style: TextStyle(fontSize: 35, fontWeight: FontWeight.bold)),
        ];
      
        void _onItemTapped(int index) {
          setState(() {
            _selectedIndex = index;
          });
        }
      
        @override
        Widget build(BuildContext context) {
          return Scaffold(
            appBar: AppBar(
              title: const Text('Flutter BottomNavigationBar Sample'),
            ),
            body: Center(
              child: _widgetOptions.elementAt(_selectedIndex),
            ),
            bottomNavigationBar: BottomNavigationBar(
              items: const <BottomNavigationBarItem>[
                BottomNavigationBarItem(
                  icon: Icon(Icons.home),
                  label: 'Home',
                ),
                BottomNavigationBarItem(
                  icon: Icon(Icons.settings),
                  label: 'Settings',
                ),
              ],
              currentIndex: _selectedIndex,
              selectedItemColor: Colors.amber[800],
              onTap: _onItemTapped,
            ),
          );
        }
      }
      

美化安卓原生组件

美化原则

  1. 简洁一致:遵循一致的设计风格,避免视觉干扰。
  2. 高可读性:使用大字体和清晰的颜色对比。
  3. 易操作性:确保按钮和交互元素足够大,便于操作。

美化技术

  1. 使用样式库:

    • React Native Paper:提供高质量的Material Design组件。
    • Styled Components:让样式和组件逻辑结合更紧密。
  2. 具体示例:

    • React Native Paper 示例:
      import * as React from 'react';
      import { BottomNavigation, Text } from 'react-native-paper';
      
      const HomeRoute = () => <Text>Home</Text>;
      const SettingsRoute = () => <Text>Settings</Text>;
      
      const App = () => {
        const [index, setIndex] = React.useState(0);
        const [routes] = React.useState([
          { key: 'home', title: 'Home', icon: 'home' },
          { key: 'settings', title: 'Settings', icon: 'cog' },
        ]);
      
        const renderScene = BottomNavigation.SceneMap({
          home: HomeRoute,
          settings: SettingsRoute,
        });
      
        return (
          <BottomNavigation
            navigationState={{ index, routes }}
            onIndexChange={setIndex}
            renderScene={renderScene}
          />
        );
      };
      
      export default App;


      总结

      通过使用适合的前后端技术框架,结合一些现成的UI组件库,可以有效地简化开发过程并提升应用的美观度和可用性。

       

标签:react,const,冲刺,React,home,组件,import,第二次
From: https://www.cnblogs.com/xuan-2004/p/18257027

相关文章

  • 团队冲刺第一天
    过去一天完成了哪些任务今日主要是对后续任务和工作的细化分配和对课程情况和空余时间的讨论与协调确定flutter+Springboot开发心理健康程序,并内置chat-gpt完成了环境的安装接下来的计划对flutter和Springboot进行学习并尝试进行软件功能的开发对软件基本框架进行搭......
  • 团队冲刺第五天
    过去一天完成了哪些任务chat-gpt内置到程序成功,可以进行AI对话主页面直接跳转AI对话接下来的计划对专栏进行开发继续学习flutter和Springboot还剩下哪些任务优化主页面专栏功能内置AI对话功能进行测试遇到了哪些困难边学习边进行功能开发问题多多Springboot的......
  • 团队冲刺第四天
    过去一天完成了哪些任务开始将chat-gpt内置到程序进一步优化主页面对专栏的数据库进行构建接下来的计划优先进行chat-gpt内置程序继续学习flutter和Springboot将主页面美化针对性的修改数据库还剩下哪些任务优化主页面专栏功能继续内置AI对话功能遇到了哪些困......
  • 团队冲刺第三天
    过去一天完成了哪些任务学习如何将chat-gpt内置到程序优化主页面对登陆注册进行测试接下来的计划优先进行chat-gpt内置程序继续学习flutter和Springboot将主页面美化还剩下哪些任务优化主页面专栏功能内置AI对话功能相应的数据库表遇到了哪些困难Springboot......
  • 团队冲刺第七天
    过去一天完成了哪些任务对专栏进行开发,可以发文章,查看文章接下来的计划优化各个页面继续学习flutter和Springboot完成AI对话的测试还剩下哪些任务优化主页面专栏功能的管理的优化内置AI对话功能进行测试遇到了哪些困难边学习边进行功能开发问题多多Springboo......
  • 团队冲刺第六天
    过去一天完成了哪些任务对专栏进行开发,完成了发帖的功能和看贴的页面优化AI对话登录注册和主页面跳转的测试接下来的计划继续专栏的开发实现专栏的管理继续学习flutter和Springboot还剩下哪些任务优化主页面专栏功能的管理内置AI对话功能进行测试遇到了哪些困难......
  • 冲刺4
    客户端部分代码:publicclassMediaPlayerimplementsandroid.media.MediaPlayer.OnPreparedListener,android.media.MediaPlayer.OnCompletionListener,android.media.MediaPlayer.OnErrorListener{privateStringTAG="MediaPlayer&qu......
  • 蓝桥杯备考冲刺必刷题(C++) | 3792 小蓝的礼物
    学习C++从娃娃抓起!记录下蓝桥杯备考比赛学习过程中的题目,记录每一个瞬间。附上汇总贴:蓝桥杯备考冲刺必刷题(C++)|汇总-CSDN博客【题目描述】小蓝想要给她的女朋友小桥买一份生日礼物,她来到了一家礼品店。在店里,她看中了N......
  • 冲刺08
    fragment_register_select_role.xml<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_......
  • 冲刺03
    这是我们的任务看板我负责了安卓端页面部分activity_child_main代码如下:<?xmlversion="1.0"encoding="utf-8"?><androidx.drawerlayout.widget.DrawerLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http:/......