实验三:Intent与Activity的使用

news2024/10/7 12:17:47

实验三:Intent与Activity的使用

3.1 实验目的

本次实验旨在帮助大家熟练掌握Intent和Activity的使用。Intent的最常见用途是绑定应用程序组件,它能够在应用程序的Activity之间启动、停止和传输数据。同时,我们还将通过添加用户名和密码的示例程序来演示如何使用Intent。

3.2 实验要求

  • 掌握创建、配置、启动和关闭Activity的方法

  • 掌握如何使用Bund-e在Activity之间交换数据

  • 掌握Intent对象的使用

3.3 实验内容

练习3.1 从一个Activity跳到另一个Activity

编写Android程序,实现根据输入的生日判断星座

步骤 1: 创建新项目
  1. 在 Android Studio 中创建一个新项目,命名为 “ZodiacCalculator”。
步骤 2: 设计界面
activity_main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="16dp">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:padding="20dp"
        android:text="欢迎使用星座计算器"
        android:textSize="24sp"
        android:textStyle="bold" />

    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="center_vertical">

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="阳历生日:" />

        <EditText
            android:id="@+id/birthday"
            android:minWidth="100dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:inputType="date" />

    </LinearLayout>

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dp"
        android:text="格式:YYYY-MM-DD 例如:2012-01-01"
        android:textSize="12sp" />

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:layout_marginTop="16dp"
        android:text="确定"
        android:textSize="16sp" />

</LinearLayout>
步骤 3: 创建第二个Activity
  1. 创建一个新的Activity,命名为 ResultActivity
  2. activity_result.xml 中添加一个TextView用于显示生日和星座。
activity_result.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="16dp">

    <TextView
        android:id="@+id/birthday"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:padding="10dp"
        android:text="阳历生日"
        android:textSize="20sp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/result"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:padding="10dp"
        android:text="星座"
        android:textSize="24sp"
        android:textColor="#8869A5"
        android:textStyle="bold" />
</LinearLayout>
步骤 4: 创建Info类
  1. 创建一个名为 Info.java 的类,用于保存生日信息。
Info.java:
package com.example.zodiaccalculator;

import java.io.Serializable;

public class Info implements Serializable {
    private static final long serialVersionUID = 1L;
    private String birthday = "";

    public String getBirthday() {
        return birthday;
    }

    public void setBirthday(String birthday) {
        this.birthday = birthday;
    }
}
步骤 5: 实现主Activity逻辑
  1. MainActivity.java 中,获取用户输入的生日,验证输入,传递信息到下一个Activity。
MainActivity.java:
package com.example.zodiaccalculator;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button button = (Button) findViewById(R.id.button1);
        button.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                Info info = new Info();

                if ("".equals(((EditText) findViewById(R.id.birthday)).getText().toString())) {
                    Toast.makeText(MainActivity.this, "请输入您的阳历生日,否则不能计算!", Toast.LENGTH_SHORT).show();
                    return;
                }

                String birthday = ((EditText) findViewById(R.id.birthday)).getText().toString();
                info.setBirthday(birthday);

                Bundle bundle = new Bundle();
                bundle.putSerializable("info", info);

                Intent intent = new Intent(MainActivity.this, ResultActivity.class);
                intent.putExtras(bundle);
                startActivity(intent);
            }
        });
    }
}
步骤 6: 在 ResultActivity 中显示结果
  1. ResultActivity.java 中获取传递的生日信息,并计算星座。
ResultActivity.java:
package com.example.zodiaccalculator;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;

public class ResultActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_result);

        TextView birthday = (TextView) findViewById(R.id.birthday);
        TextView result = (TextView) findViewById(R.id.result);

        Intent intent = getIntent();
        Bundle bundle = intent.getExtras();
        Info info = (Info) bundle.getSerializable("info");

        birthday.setText("您的阳历生日是 " + info.getBirthday());
        result.setText(query(info.getBirthday()));
    }

    public String query(String birthday) {
        int month = 0;
        int day = 0;

        try {
            month = Integer.parseInt(birthday.substring(5, 7));
            day = Integer.parseInt(birthday.substring(8, 10));
        } catch (Exception e) {
            e.printStackTrace();
        }

        String name = ""; // 星座名称

        if (month > 0 && month < 13 && day > 0 && day < 32) {
            if ((month == 3 && day >= 21) || (month == 4 && day <= 20)) {
                name = "白羊座";
            } else if ((month == 4 && day >= 21) || (month == 5 && day <= 21)) {
                name = "金牛座";
            } else if ((month == 5 && day >= 22) || (month == 6 && day <= 21)) {
                name = "双子座";
            } else if ((month == 6 && day >= 22) || (month == 7 && day <= 22)) {
                name = "巨蟹座";
            } else if ((month == 7 && day >= 23) || (month == 8 && day <= 22)) {
                name = "狮子座";
            } else if ((month == 8 && day >= 23) || (month == 9 && day <= 23)) {
                name = "处女座";
            } else if ((month == 9 && day >= 24) || (month == 10 && day <= 23)) {
                name = "天秤座";
            } else if ((month == 10 && day >= 24) || (month == 11 && day <= 22)) {
                name = "天蝎座";
            } else if ((month == 11 && day >= 23) || (month == 12 && day <= 21)) {
                name = "射手座";
            } else if ((month == 12 && day >= 22) || (month == 1 && day <= 19)) {
                name = "摩羯座";
            } else if ((month == 1 && day >= 20) || (month == 2 && day <= 18)) {
                name = "水瓶座";
            } else if ((month == 2 && day >= 19) || (month == 3 && day <= 20)) {
                name = "双鱼座";
            }
        } else {
            name = "无效生日";
        }

        return name;
    }

}
步骤 7: 星座计算逻辑
  1. query 方法中实现真实的星座计算逻辑。
步骤 8: 在 AndroidManifest.xml 中注册Activity
  1. AndroidManifest.xml 中注册两个Activity。

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example.zodiaccalculator">
    
        <application
            android:allowBackup="true"
            android:icon="@mipmap/ic_launcher"
            android:label="@string/app_name"
            android:roundIcon="@mipmap/ic_launcher_round"
            android:supportsRtl="true"
            android:theme="@style/Theme.ZodiacCalculator">
            <activity android:name=".MainActivity">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
    
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
    
            <!-- 注册ResultActivity -->
            <activity android:name=".ResultActivity" />
    
        </application>
    
    </manifest>
    
    步骤7:运行效果

    image-20231027150657793

    image-20231027150553018

    练习3.2 从一个Activity跳到另一个Activity再返回

    编写Android程序,实现带选择所在城市的用户注册。

    步骤 1: 创建项目和两个Activity
    1. 在 Android Studio 中创建一个新的 Android 项目,取名为 CityRegister

    2. CityRegister 项目中,创建两个Activity:

      • MainActivity 用于用户注册。
      • HeadActivity 用于选择所在城市。
    步骤 2: 设计布局文件

    activity_main.xml (用户注册界面)

    • 用于输入用户名、密码、确认密码、E-mail 地址以及显示选择的城市。

      <?xml version="1.0" encoding="utf-8"?>
      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="fill_parent"
      
          android:layout_height="fill_parent"
          android:orientation="horizontal"
          android:paddingTop="20px">
      
          <TableLayout
              android:id="@+id/tableLayout1"
              android:layout_width="match_parent"
              android:layout_height="wrap_content">
      
              <TableRow
                  android:id="@+id/tableRow1"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content">
      
                  <TextView
                      android:id="@+id/textView1"
                      android:layout_width="wrap_content"
                      android:layout_height="wrap_content"
                      android:text="用户名: "
                      android:textSize="60px" />
      
                  <EditText
                      android:id="@+id/user"
                      android:layout_width="wrap_content"
                      android:layout_height="wrap_content"
                      android:minWidth="400px" />
              </TableRow>
      
              <TableRow
                  android:id="@+id/tableRow2"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content">
      
                  <TextView
                      android:id="@+id/textView2"
                      android:layout_width="wrap_content"
                      android:layout_height="wrap_content"
                      android:text="密码: "
                      android:textSize="60px" />
      
                  <EditText
                      android:id="@+id/pwd"
                      android:layout_width="wrap_content"
                      android:layout_height="wrap_content"
      
                      android:inputType="textPassword" />
              </TableRow>
      
              <TableRow
                  android:id="@+id/tableRow3"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content">
      
                  <TextView
                      android:id="@+id/textView3"
                      android:layout_width="wrap_content"
                      android:layout_height="wrap_content"
                      android:text="确认密码: "
                      android:textSize="60px" />
      
                  <EditText
                      android:id="@+id/repwd"
                      android:layout_width="wrap_content"
                      android:layout_height="wrap_content"
                      android:inputType="textPassword" />
              </TableRow>
      
              <TableRow
                  android:id="@+id/tableRow4"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content">
      
                  <TextView
                      android:id="@+id/textView4"
                      android:layout_width="wrap_content"
                      android:layout_height="wrap_content"
                      android:text="E-mail 地址: "
                      android:textSize="60px" />
      
                  <EditText
                      android:id="@+id/email"
                      android:layout_width="wrap_content"
                      android:layout_height="wrap_content" />
              </TableRow>
      
              <TableRow
                  android:id="@+id/tableRow5"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content">
      
      
                  <Button
                      android:id="@+id/button1"
                      android:layout_width="wrap_content"
                      android:layout_height="wrap_content"
                      android:text="选择所在城市"
                      android:textSize="25dp" />
      
                  <EditText
                      android:id="@+id/city"
                      android:layout_width="wrap_content"
                      android:layout_height="wrap_content" />
      
      
              </TableRow>
          </TableLayout>
      
      </LinearLayout>
      

    head.xml (选择城市界面)

    • 使用一个 GridView 显示可选择的城市列表。

      <?xml version="1.0" encoding="utf-8"?>
      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:orientation="vertical" >
          <GridView android:id="@+id/gridView1"
              android:layout_height="match_parent"
              android:layout_width="match_parent"
              android:layout_marginTop="10px"
              android:horizontalSpacing="3px"
              android:verticalSpacing="3px"
              android:numColumns="4"
              />
      
      </LinearLayout>
      
    步骤 3: 实现逻辑和事件处理

    MainActivity.java

    • 设置点击按钮跳转到 HeadActivity,并处理返回的城市信息。

      package com.example.cityregister;
      
      import android.app.Activity;
      import android.content.Intent;
      import android.os.Bundle;
      import android.view.View;
      import android.view.View.OnClickListener;
      
      import android.widget.Button;
      import android.widget.EditText;
      import android.widget.GridView;
      import android.widget.TextView;
      public class MainActivity extends Activity {
          /** Called when the activity is first created. */
          @Override
          public void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
              Button button=(Button)findViewById(R.id.button1);    //获取选择头像按钮
              button.setOnClickListener(new OnClickListener() {
      
                  @Override
                  public void onClick(View v) {
                      Intent intent=new
                              Intent(MainActivity.this,HeadActivity.class);
      
                      startActivityForResult(intent, 0x11);    //启动 intent 对应的Activity
                  }
              });
          }
      
          @Override
          protected void onActivityResult(int requestCode, int resultCode, Intent data) {
              super.onActivityResult(requestCode, resultCode, data);
              if(requestCode==0x11 && resultCode==0x11){ //判断是否为待处理 的结果
                  Bundle bundle=data.getExtras();              //获取传递的数据包 String city=bundle.getString("city");    //获取选择的头像 ID
                  String city=bundle.getString("city");
                  TextView tv=(TextView)findViewById(R.id.city); //获取布局文件中添加的 ImageView 组件
                  tv.setText(city);
              }
          }
      }
      

    HeadActivity.java

    • 使用 GridView 显示城市列表,点击城市后返回选择的城市。

      package com.example.cityregister;
      
      import android.app.Activity;
      import android.content.Intent;
      
      import android.os.Bundle;
      import android.view.View;
      import android.view.ViewGroup;
      import android.widget.AdapterView;
      import android.widget.AdapterView.OnItemClickListener;
      import android.widget.BaseAdapter;
      import android.widget.GridView;
      import android.widget.TextView;
      public class HeadActivity extends Activity {
          public String[] city = new String[] { "北京", "上海","广州","长春","沈阳"," 哈尔滨","天津","西安","杭州","深圳","南京","洛阳" };
      
          //  定义并初始化保存头像 id 的数组
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.head);        //设置该 Activity 使用的布局 GridView gridview = (GridView) findViewById(R.id.gridView1);
              GridView gridview=findViewById(R.id.gridView1);
      //  获取 GridView 组件
              BaseAdapter adapter=new BaseAdapter() {
                  @Override
                  public View getView(int position, View convertView, ViewGroup
                          parent) {
                      TextView tv;                                          //声明 ImageView 的对象
                      if(convertView==null){
                          tv=new TextView(HeadActivity.this);              //实例化ImageView 的对象
      //                         /*************设置图像的宽度和高度******************/
      //                          imageview.setAdjustViewBounds(true);
      //                          imageview.setMaxWidth(158);
      //                          imageview.setMaxHeight(150);
      //                         /**************************************************/ tv.setPadding(5, 5, 5, 5);                    //设置 ImageView的内边距
                      }else{
                          tv=(TextView)convertView;
                      }
      
                      tv.setText(city[position]);              //为 ImageView 设置要显示的图片
                      return tv; //返回 ImageView
                  }
      
                  /*
                   *  功能:获得当前选项的 ID
                   */
                  @Override
                  public long getItemId(int position) {
                      return position;
                  }
                  /*
                   *  功能:获得当前选项
                   */
                  @Override
                  public Object getItem(int position) {
                      return position;
                  }
                  /*
                   *  获得数量
                   */
                  @Override
                  public int getCount() {
                      return city.length;
                  }
              };
      
              gridview.setAdapter(adapter);                                                    //  将适配器与 GridView 关联
              gridview.setOnItemClickListener(new OnItemClickListener() { @Override
              public void onItemClick(AdapterView<?> parent, View view, int position,long id) {
                  Intent intent=getIntent(); //获取 Intent 对象
                  Bundle bundle=new Bundle();        //实例化要传递的数据包 bundle.putString("city",city[position] );//  显示选中的图片  intent.putExtras(bundle);    //将数据包保存到 intent 中
                  setResult(0x11,intent);        //设置返回的结果码,并返回调用该 Activity 的 Activity
                  finish();          //关闭当前 Activity
              }
              });
          }
      }
      
    步骤 4: 在 AndroidManifest.xml 中注册Activity
    • 注册 MainActivityHeadActivity

      <?xml version="1.0" encoding="utf-8"?>
      <manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.example.cityregister">
      
          <application
              android:allowBackup="true"
              android:icon="@mipmap/ic_launcher"
              android:label="@string/app_name"
              android:roundIcon="@mipmap/ic_launcher_round"
              android:supportsRtl="true"
              android:theme="@style/Theme.Design.NoActionBar">
              <activity android:name=".MainActivity">
                  <intent-filter>
                      <action android:name="android.intent.action.MAIN" />
                      <category android:name="android.intent.category.LAUNCHER" />
                  </intent-filter>
              </activity>
              <activity android:name=".HeadActivity" >
              </activity>
          </application>
      </manifest>
      
    步骤 5: 运行程序
    • 运行你的应用程序,测试用户注册界面和城市选择功能。

    image-20231102000145963

    image-20231102000249692

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1167745.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++初阶】类与对象(二)

目录 前言&#xff1a;一、构造函数1.1 构造函数概念1.2 为什么有构造函数1.3 构造函数的写法及使用1.4 默认构造函数1.5 哪些可为默认构造函数 二、析构函数2.1 析构函数概念2.2 为什么有析构函数2.3析构函数的写法及使用2.4 默认析构函数 三、拷贝构造函数3.1 拷贝构造函数概…

制造行业数字化运维破局之道

项目背景 某大型汽车制造集团&#xff0c;致力于通过数字化、智能化运营手段为用户提升提供高品质的汽车产品和服务。IT部门不仅为内外部持续提供服务&#xff0c;同时为业务运营与核心系统运行提供重要支撑。数字化运维作为数字化转型的核心基础&#xff0c;不但要保障数据安…

CSDN规则详解(一)

文章目录 前言CSDN博客用户准则总则博客注册博客行为规则被投诉侵权用户处理规则附则 博客积分规则博客等级博客VIP文章说明后记 前言 CSDN是一个专业的技术社区&#xff0c;不仅可以分享自己的技术经验&#xff0c;还可以向其他行业专业人士学习。在CSDN上写出优秀的博客可以…

管理如何实现制度流程化 流程表单化 表单信息化 信息标准化?

业务化、流程化、信息化、数字化、自动化、智能化&#xff0c;是企业业务管理发展路径的六个必经阶段 制度业务化&#xff0c;业务表单化&#xff0c;表单流程化、流程信息化、信息标准化、标准制度华。 制度流程化、流程表单化、表单信息化、信息标准化、标准制度华。 管理…

Linux软件安装包管理器yum

Linux软件安装 Linux软件安装的本质 ​ 对于安装软件最基本的理解就是把可执行程序拷贝到指定路径下&#xff0c;我们知道直接输入指令就可以实现想要的功能&#xff0c;这些指令本质上都是放在指定路径下的可执行文件&#xff0c;如果我们把写好的程序编译后的可执行文件放到…

优维低代码实践:打包发布

导语 优维低代码技术专栏&#xff0c;是一个全新的、技术为主的专栏&#xff0c;由优维技术委员会成员执笔&#xff0c;基于优维7年低代码技术研发及运维成果&#xff0c;主要介绍低代码相关的技术原理及架构逻辑&#xff0c;目的是给广大运维人提供一个技术交流与学习的平台。…

MES系统生产看板

在现代制造业中&#xff0c;生产看板是一种重要的工具&#xff0c;用于实时监控和管理生产过程。而随着制造执行系统&#xff08;MES&#xff09;的发展&#xff0c;生产看板已经得到了数字化的升级和优化。 一、MES系统生产看板的概述 MES系统生产看板是制造执行系统在生产现…

客服发送一条消息背后的技术和思考

一、引言 在企业客服场景中&#xff0c;客服发送一条消息的背后&#xff0c;需要考虑网络通信、前端展示、后端存储以及安全性等多个方面的技术支持&#xff0c;单从前端层面来说&#xff0c;就需要考虑到消息的显示、状态更新、稳定传输以及极限操作消息不卡顿等场景&#xf…

Iceberg 基础知识与基础使用

1 Iceber简介 1.1 概述 为了解决数据存储和计算引擎之间的适配的问题&#xff0c;Netflix开发了Iceberg&#xff0c;2018年11月16日进入Apache孵化器&#xff0c;2020 年5月19日从孵化器毕业&#xff0c;成为Apache的顶级项目。 Iceberg是一个面向海量数据分析场景的开放表格…

Adobe After Effects 2024(Ae2024)在新版本中的升级有哪些?

After Effects 2024是Adobe公司推出的一款视频处理软件&#xff0c;它适用于从事设计和视频特技的机构&#xff0c;包括电视台、动画制作公司、个人后期制作工作室以及多媒体工作室。通过After Effects&#xff0c;用户可以高效且精确地创建无数种引人注目的动态图形和震撼人心…

新零售实用小技巧,大神都在用!

自动售货机&#xff0c;作为一种融合了数字技术和零售业的创新&#xff0c;正迅速改变着我们的购物习惯和零售商的经营方式。 这一技术趋势不仅为零售业带来了新的商机&#xff0c;也为消费者提供了更为便捷和个性化的购物体验。自动售货机不再仅仅是传统的商品分发设备&#x…

教师减负神器

在传统的成绩管理模式中&#xff0c;教师需要手动输入、整理、分析成绩数据&#xff0c;工作量大且繁琐。这不仅耗费了教师大量的时间和精力&#xff0c;还容易出现错误。为了解决这个问题&#xff0c;我们可以通过各种代码和Excel来实现学生自助查询成绩的功能。 一、建立成绩…

深度学习之基于Tensorflow卷积神经网络学生课堂坐姿姿势识别系统

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 基于Tensorflow的卷积神经网络学生课堂坐姿姿势识别系统介绍 Tensorflow是一个流行的开源机器学习框架&#xff0c…

【深度学习项目从下载到运行】

本文只是介绍一个大致的流程&#xff0c;简单的介绍一个深度学习项目整体的一个从下载到运行的框架让初学者入门。 实际在运行的过程中可能会遇到各种各样的问题。 目录 代码下载python项目各个文件夹的解释一个深度学习项目要包含的各个模块配置环境命令行运行项目且看项目的参…

基于php+thinkphp+vue的学生公寓管理系统-宿舍管理-寝室管理系统

运行环境 开发语言&#xff1a;PHP 数据库:MYSQL数据库 应用服务:apache服务器 使用框架:ThinkPHPvue 开发工具:VScode/Dreamweaver/PhpStorm等均可 项目简介 本系统结合计算机系统的结构、概念、模型、原理、方法&#xff0c;在计算机各种优势的情况下&#xff0c;采用PHP语…

多模态论文阅读之VLMo

VLMo泛读 TitleMotivationContributionModelExpertimentsSummary Title VLMo:Unified Vision_Langugae Pre-Training with Mixture-of-Modality-Experts Motivation CLIP和ALIGN都采用dual-encoder的方式分别编码图像和文本&#xff0c;模态之间的交互采用cosine similarity…

AERMOD模型在大气环境影响评价中的实践技术应用

随着我国经济快速发展&#xff0c;我国面临着日益严重的大气污染问题。近年来&#xff0c;严重的大气污染问题已经明显影响国计民生&#xff0c;引起政府、学界和人们越来越多的关注。大气污染是工农业生产、生活、交通、城市化等方面人为活动的综合结果&#xff0c;同时气象因…

ROS学习笔记(5):rviz和rosbag数据记录、回放

1.rviz 1.前提 rviz-三维可视化平台可以满足ROS针对机器人的可视化需求。在Gazebo那里也可以看到rviz可以让模型显示在rviz上。 2.rviz的安装与运行 1.rviz的安装 sudo apt-get install ros-melodic-rviz 2.rviz的运行 roscore rviz/rosrun rviz rviz 3.rviz界面 1.视图区…

历“九“弥坚,怿星战略转型开新篇

10月是收获的季节&#xff0c;也迎来了怿星9岁生日。1024&#xff0c;程序员节&#xff0c;作为一家技术人员占比超过75%的高新技术企业&#xff0c;怿星9周年庆典活动也在这一天如期而至。 我们坚定地走在正确的道路上 近两年&#xff0c;多重因素叠加导致行业动荡也带来了资…

喝酒聚会摇色子小程序源码系统+石头剪刀布+大转盘 带完整的部署教程

来咯来咯&#xff0c;大家都知道摇色子是一种古老而受欢迎的饮酒游戏。在当代年轻人的聚会中&#xff0c;常常都使用摇骰子这种方法来喝酒的。今天罗峰要给大家介绍是一款非常受欢迎的小程序源码系统喝酒聚会摇色子小程序源码系统&#xff0c;还有石头剪刀布&#xff0c;大转盘…