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

Dw做html网站企业网站建设可行性分析表

Dw做html网站,企业网站建设可行性分析表,搭建网站教学,公司网页设计免费这时候旋转设备还是会重置秒表。旋转设备时Android会重新创建活动。如果你的活动包含一个 fragment 元素#xff0c;每次重新创建活动时#xff0c;它会重新插入片段的一个新版本。老片段被丢掉#xff0c;所有实例变量会设置其初始值。在这个特定的例子中#xf…这时候旋转设备还是会重置秒表。旋转设备时Android会重新创建活动。如果你的活动包含一个 fragment 元素每次重新创建活动时它会重新插入片段的一个新版本。老片段被丢掉所有实例变量会设置其初始值。在这个特定的例子中这意味着秒表会设置回到0。 所以动态片段需要一个片段事务片段元素对于显示静态数据的片段很适用但是如果有一个动态片段就需要使用片段事务来增加片段。 修改activity_temp.xml来使用FrameLayout。 ?xml version1.0 encodingutf-8? FrameLayout xmlns:androidhttp://schemas.android.com/apk/res/androidandroid:id id/stopwatch_containerandroid:layout_widthmatch_parentandroid:layout_heightmatch_parent /FrameLayout为TempActivity.java增加一个片段事务。 它将StopwatchFragment增加到TempActivity。 package com.hfad.workout;import androidx.appcompat.app.AppCompatActivity; import androidx.fragment.app.FragmentTransaction; import android.os.Bundle;public class TempActivity extends AppCompatActivity {Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_temp);if (savedInstanceState null) {StopwatchFragment stopwatch new StopwatchFragment();FragmentTransaction ft getSupportFragmentManager().beginTransaction();ft.add(R.id.stopwatch_container, stopwatch);ft.addToBackStack(null);ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);ft.commit();}} }如此运行应用后秒表就能像之前一样正常工作。 为WorkoutDetailFragment增加秒表 修改AndroidManifest.xml的启动应用 ?xml version1.0 encodingutf-8? manifest xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:toolshttp://schemas.android.com/toolsapplicationandroid:allowBackuptrueandroid:dataExtractionRulesxml/data_extraction_rulesandroid:fullBackupContentxml/backup_rulesandroid:iconmipmap/ic_launcherandroid:labelstring/app_nameandroid:roundIconmipmap/ic_launcher_roundandroid:supportsRtltrueandroid:themestyle/Theme.Workouttools:targetApi31activityandroid:name.TempActivityandroid:exportedtrue /activityactivityandroid:name.DetailActivityandroid:exportedfalse /activityandroid:name.MainActivityandroid:exportedtrueintent-filteraction android:nameandroid.intent.action.MAIN /category android:nameandroid.intent.category.LAUNCHER //intent-filter/activity/application/manifest在显示片段的地方fragment_workout_detail.xml增加一个FrameLayout ?xml version1.0 encodingutf-8? LinearLayout xmlns:androidhttp://schemas.android.com/apk/res/androidandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentandroid:orientationverticalTextViewandroid:layout_widthwrap_contentandroid:layout_heightwrap_contentandroid:textAppearance?android:attr/textAppearanceLargeandroid:idid/textTitle /TextViewandroid:layout_widthwrap_contentandroid:layout_heightwrap_contentandroid:idid/textDescription /FrameLayoutandroid:idid/stopwatch_containerandroid:layout_widthmatch_parentandroid:layout_heightmatch_parent //LinearLayout要在一个片段中使用片段事务时使用的代码基本相同有一个重要的区别就是 片段没有一个名为getSupportFragmentManager的方法下面这行代码需要修改 FragmentTransaction ft getSupportFragmentManager().beginTransaction();创建getFragmentManager在后退堆栈创建额外的事务。 getFragmentManager方法会得到与片段父活动相关联的片段管理器。使用这个片段管理器创建的所有事务片段事务会分别作为一个单独的事务增加到后退堆栈。 假设用户单击了一个训练项目会显示这个训练项目的详细信息以及秒表如果用户再单击后退按钮他们可能希望屏幕回到选择训练项目之前的状态。但是后退按钮只是弹出后退堆栈中的最后一个事务。这说明如果我们创建两个事务来增加训练项目个秒表用户单击后退按钮时只会删除秒表。他们必须再次单击后退按钮才能删除训练项目的详细信息。 使用getChildFragmentManager()创建嵌套事务 getChildFragmentManager方法会得到与片段的父片段关联的片段管理器。使用这个片段管理器创建的所有片段事务都会增加到父片段事务的后退堆栈而不是增加为一个单独的事务。 用户单击一个训练项目时还是会显示WorkoutDetailFragment和StopwatchFragment不过用户单击后退按钮时行为会有所不同。由于这两个事务是嵌套的所以用户按下后退按钮时两个事务都会从后退堆栈弹出。用户按下一次后退按钮训练项目详细信息和秒表都将删除。 把getChildFragmentManager()片段事务代码增加到WorkoutDetailFragment.java package com.hfad.workout;import android.os.Bundle;import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentTransaction;import android.os.PersistableBundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView;public class WorkoutDetailFragment extends Fragment {//用来表示用户选择的训练项目的IDprivate long workoutId;Override//Android需要这个片段的布局时会调用这个方法public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {// 这会告诉Android这个片段使用哪个布局return inflater.inflate(R.layout.fragment_workout_detail, container, false);}Overridepublic void onCreate(Nullable Bundle savedInstanceState) {super.onCreate(savedInstanceState);if (savedInstanceState ! null){workoutId savedInstanceState.getLong(workoutId);}else{StopwatchFragment stopwatch new StopwatchFragment();FragmentTransaction ft getChildFragmentManager().beginTransaction();ft.add(R.id.stopwatch_container, stopwatch);ft.addToBackStack(null);ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);ft.commit();}}public void onStart() {super.onStart();//得到片段的根视图然后使用这个根视图得到两个文本视图的引用View view getView();if (view ! null) {TextView title (TextView) view.findViewById(R.id.textTitle);Workout workout Workout.workouts[(int)workoutId];title.setText(workout.getName());TextView description (TextView) view.findViewById(R.id.textDescription);description.setText(workout.getDescription());}}public void setWorkoutId(long id) {this.workoutId id;}Overridepublic void onSaveInstanceState(NonNull Bundle outState) {super.onSaveInstanceState(outState);outState.putLong(workoutId, workoutId);} }如此大功告成。
http://www.hkea.cn/news/14274938/

相关文章:

  • 自做购物网站多少钱wordpress欢迎主题
  • 网站正在建设中界面设计php网站内容管理系统
  • 利用小米路由器mini做网站怎么宣传网站
  • 国外网站 国内访问速度品质好物推荐怎么上
  • asp做的网站缺点公司部门解散调岗不同意有赔偿吗
  • 竹子建站怎么样营销网站建设维护
  • 东莞个人网站制作免费的微信小程序模板
  • 动态素材网站旅行社网站模板
  • 网站开发与管理所对应的职位及岗位西安好的互联网设计公司
  • 海沧网站建设廊坊企业建站模板
  • wordpress 微网站模板Light模板WordPress
  • 邢台移动网站建设网站html地图怎么做的
  • 何炅做的代言网站wordpress案例站点
  • 怎么做彩票网站网页软件开发
  • 网站建设合同2018连衣裙一起做网站
  • 网站建设学习网公司有哪些绿色食品网站源码
  • 搭建个人博客wordpress成都企业网站seo
  • 电子商务网站建设人才官方百度平台
  • 协会网站建设制作农村建设设计网站首页
  • 上海网站建设 觉策动力定制网站开发公司电话
  • 网站开发实践意义微信文章 图片 wordpress
  • 云南工程建设总承包公司网站百度搜索到自己的网站
  • 营销型网站建设的好处东莞债务优化
  • 直播网站制作o2o平台运营是什么意思
  • 网站外部链接合理建设专业做域名的网站
  • 网站设计有哪些语言版本做兼职哪个网站好
  • 网站自适应布局闭站保护期间网站能够打开吗
  • 网站开发所需要的知识资金盘网站开发公司哪里好
  • python 网站开发教程微信小程序直播平台
  • 企业网站排名优化哪家好wordpress上传图片教程