当前位置: 首页 > news >正文

旅游网站开发毕业设计网络平台运营模式

旅游网站开发毕业设计,网络平台运营模式,青岛网站开发公司电话,h5微网站建设多少钱Intent是各个组件之间交互的一种重要方式#xff0c;它不仅可以指明当前组件想要执行的动作#xff0c;而且还能在各组件之间传递数据。Intent一般可用于启动Activity、启动Service、发送广播等场景。Intent有多个构造函数的重载。 显式intent 显式 Intent 明确指定要启动的…Intent是各个组件之间交互的一种重要方式它不仅可以指明当前组件想要执行的动作而且还能在各组件之间传递数据。Intent一般可用于启动Activity、启动Service、发送广播等场景。Intent有多个构造函数的重载。 显式intent 显式 Intent 明确指定要启动的目标组件的类名。通过显式 Intent开发者可以直接调用应用程序内的特定 Activity 或服务。主要用于应用程序内部组件之间的调用。比如在一个 Activity 中启动另一个 Activity。 Intent intent new Intent(MainActivity.class,SecondActivity.class); intent.putExtra(et1,et1Str); startActivity(intent); Intent intent new Intent(...)这行代码创建了一个新的 Intent 对象。Intent 是 Android 中用于不同组件如 Activity、服务等之间进行通信的基础类。new Intent(MainActivity.class, SecondActivity.class)这个构造函数的两个参数分别是起始 Activity和目标 Activity。在这个例子中从 MainActivity 目标是 SecondActivity。这意味着当 Intent 被启动时应用程序会在 SecondActivity 中打开界面。intent.putExtra(et1, et1Str)这行代码用于将额外的数据放入 Intent 中。在这里et1 是键key而 et1Str 是与之关联的值。这种方式允许我们在启动的 SecondActivity 中接收 et1Str 的值便于在新的界面上使用或显示该数据。startActivity(intent)这行代码调用 startActivity 方法使用先前创建的 Intent 启动 SecondActivity。执行这一行后应用程序将离开 MainActivity并加载 SecondActivity 的界面。 隐式intent 隐式 Intent 不直接指定目标组件而是通过指定一个动作Action和/或数据Data来指示系统执行某种操作。系统会根据 Intent 的信息查找可以处理该 Intent 的合适组件。 隐式 Intent 允许多个应用程序响应同一个 Intent。只要有一个组件注册了与 Intent 的动作、类别和数据匹配的 intent-filter就可以接收到这个 Intent。 java部分 Intent intent new Intent(Intent.ACTION_VIEW); intent.setData(Uri.parse(https://www.baidu.com)); startActivity(intent); Intent intent new Intent(Intent.ACTION_VIEW);这行代码创建了一个新的 Intent 对象指定了动作为 ACTION_VIEWintent.setData(Uri.parse(https://www.baidu.com));这行代码将 Intent 的数据设置为一个 URI统一资源标识符在这个例子中是百度的网页地址 https://www.baidu.com。使用 Uri.parse() 方法将字符串转换为 URI 格式这允许系统知道需要打开什么资源。startActivity(intent);这行代码使用先前创建的 Intent 启动一个新的 Activity。在这里它通常会打开一个浏览器或系统的 Web 视图展示所指定的 URL。 AndroidManifest.xml部分 activity android:name.SecondActivityintent-filteraction android:namecom.example.test.action.VIEW / category android:nameandroid.intent.category.DEFAULT /data android:schemehttp/intent-filter/activity activity android:name.SecondActivity这行代码在 AndroidManifest.xml 文件中声明了一个 Activity名为 SecondActivity。intent-filter这个标签用于定义这个 Activity 能够响应的 intentaction android:namecom.example.test.action.VIEW /这行代码定义了一个自定义的动作com.example.test.action.VIEW意味着这个 Activity 可以处理带有这个动作的 Intent。category android:nameandroid.intent.category.DEFAULT /这行代码将意图分类为默认类别表示这个 Activity 可以处理一些常见的意图。data android:schemehttp /这行代码指定了这个 Activity 处理的数据类型主要是以 http 开头的 URI。在这里它明确表示这个 Activity 可以接收以 http 或 https 开头的网址。 对比 特点 显式 Intent 隐式 Intent 目标指定法 直接指定目标组件类名 不指定目标组件通过 Action、Data 让系统解析 适用场景 应用内组件间的通信 向系统或其他应用发送请求 安全性 相对更安全明确调用 相对不安全需要意图过滤器匹配 注册需求 无需在 Manifest 中注册 需要在 Manifest 中使用 intent-filter 注册 使用示例 new Intent(this, SecondActivity.class) new Intent(Intent.ACTION_VIEW) intent接收字符串 Intent intent getIntent(); String data intent.getStringExtra(et1); 接收名为et1的参数值 第二个组件返回数据 有两种方式一种式通过startActivityForResult一种是通过back键 第一种 不按back键 // 在第一个 Activity 中 Intent intent new Intent(this, SecondActivity.class); startActivityForResult(intent, 1); // 1为请求码用于标识该请求 使用 startActivityForResult() 方法启动第二个组件Activity。这允许第一个组件在第二个组件结束时接收结果。 // 在第二个 Activity 中 EditText editText findViewById(R.id.editText); String resultData editText.getText().toString(); // 处理用户点击的按钮 Button button findViewById(R.id.button); button.setOnClickListener(v - { Intent resultIntent new Intent(); resultIntent.putExtra(returnData, resultData); // 返回数据 setResult(RESULT_OK, resultIntent); // 设置结果为 OK并传递数据 finish(); // 结束该 Activity }); 在第二个组件Activity中获取用户输入的数据并在用户完成操作后使用 setResult() 方法将数据返回给第一个组件然后调用 finish() 结束该 Activity。 Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode 1) { // 检查请求码 if (resultCode RESULT_OK) { // 检查结果是否 OK String returnData data.getStringExtra(returnData); // 处理返回的数据 Toast.makeText(this, Received: returnData, Toast.LENGTH_SHORT).show(); } } } 在第一个组件中重写 onActivityResult() 方法以接收来自第二个组件的结果。可以通过请求码来识别该结果是来自哪个 Activity。 第二种 按back键 如果用户通过点击 Back 键返回到第一个 Activity在正常情况下Back 键会关闭第二个 Activity而不会返回任何结果。在这种情况下onActivityResult() 方法将不会被调用因为没有通过 setResult() 返回结果。如果你希望在用户按 Back 键时处理结果可以在第二个 Activity 中重写 onBackPressed() 方法并使用 setResult() 返回数据。 Override public void onBackPressed() { Intent resultIntent new Intent(); resultIntent.putExtra(returnData, User cancelled); // 设置返回数据 setResult(RESULT_CANCELED, resultIntent); // 设置结果为 CANCELLED super.onBackPressed(); // 调用父类方法结束该 Activity } 那么第一个组件种也要重写onActivityResult来接收传递的值 Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode 1) { // 检查请求码 if (resultCode RESULT_OK) { // 检查结果是否 OK String returnData data.getStringExtra(returnData); // 处理返回的数据 Toast.makeText(this, Received: returnData, Toast.LENGTH_SHORT).show(); } } } 仔细观察会发现他们第二个组件都是差不多的都有以下相同的代码逻辑 Intent resultIntent new Intent(); resultIntent.putExtra(returnData, User cancelled); // 设置返回数据 setResult(RESULT_CANCELED, resultIntent); // 设置结果为 CANCELLED super.onBackPressed(); // 调用父类方法结束该 Activity 但是如果通过按back键来返回的话就多了一个 重写onBackPressed的过程他是针对用户需要进行back键来返回的逻辑处理通俗来讲也就是针对用户按下back键这一操作的逻辑处理。 不同场景 使用不同的方式 例如 如果用户必须完成某项操作后才能返回数据那么使用 不按back的方式 是更合适的选择。如果你希望记录用户退出的状态或者允许用户在不完成输入的情况下返回数据重写 onBackPressed() 来返回一些适合的默认值是一个很好的选择。
http://www.w-s-a.com/news/203401/

相关文章:

  • 网站开发下载阿里云oss做视频网站
  • 东莞营销网站制作做一个网站建设
  • 啥网站都能看的浏览器下载网站后台管理系统展望
  • 新建站点步骤汉中 wordpress联盟
  • 坪山网站设计的公司网站 seo 设置
  • 济南网站设计公司排名如何免费注册网站域名
  • 网站开发分工甜妹妹福利wordpress
  • 网站中英文要怎么做网站建设的策划文案
  • 合肥推广外包公司佛山seo
  • 成都网站品牌设计策划课堂网站开发
  • 做直播网站赚钱公司网站空间怎么续费
  • 企业网站制作公司有哪些太原网站建设 thinkphp3.2
  • 云集网站哪个公司做的百度竞价排名怎么做
  • 做网站公司赚钱吗网站建设英语翻译
  • 网络公司除了做网站产品设计作品
  • dede网站模板替换湘潭建设路街道网站
  • 东莞网站优化效果如何网络设计工作
  • 网站备案系统验证码出错的解决方案任丘建设银行网站
  • 个人博客建站wordpress叮当app制作
  • 网站式的公司记录怎么做二手书网站策划书
  • 营销型网站的建设重点是什么帝国程序和WordPress
  • 正能量网站推荐不需要下载巴中网站建设开发公司
  • 学生模拟网站开发西安seo平台
  • 免费的app推广平台免费网站seo
  • 建一个个人网站网站建设中小企业广西
  • 优惠券网站做淘客违规吗个人建网站运营.
  • 旅游网站制作建设华大基因 网站建设
  • sem推广竞价托管南京seo网站优化
  • 网站优化网站建站教程网站建设 成都
  • 网站 配色表html代码在线