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

江苏建站系统家装公司哪家比较好

江苏建站系统,家装公司哪家比较好,淘宝站外引流推广方法,百度免费优化在这个实践案例中#xff0c;我们将使用Jetpack Navigation创建一个简单的新闻应用。这个应用将包含以下功能#xff1a; 新闻列表页面#xff1a;显示一组新闻文章。新闻详情页面#xff1a;显示选定新闻文章的详细信息。用户资料页面#xff1a;显示用户的资料信息。 … 在这个实践案例中我们将使用Jetpack Navigation创建一个简单的新闻应用。这个应用将包含以下功能 新闻列表页面显示一组新闻文章。新闻详情页面显示选定新闻文章的详细信息。用户资料页面显示用户的资料信息。 我们将通过导航图、传递数据、处理返回操作和集成底部导航来展示Jetpack Navigation的强大功能。 第一步项目设置 添加依赖项 在build.gradle文件中添加必要的依赖项 dependencies {def nav_version 2.4.0implementation androidx.navigation:navigation-fragment-ktx:$nav_versionimplementation androidx.navigation:navigation-ui-ktx:$nav_versionimplementation com.google.android.material:material:1.4.0 }创建导航图 在res/navigation目录中创建一个新的导航图文件nav_graph.xml。 ?xml version1.0 encodingutf-8? navigation xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:apphttp://schemas.android.com/apk/res-autoxmlns:toolshttp://schemas.android.com/toolsapp:startDestinationid/newsListFragmentfragmentandroid:idid/newsListFragmentandroid:namecom.example.newsapp.NewsListFragmentandroid:labelNews Listtools:layoutlayout/fragment_news_list actionandroid:idid/action_newsListFragment_to_newsDetailFragmentapp:destinationid/newsDetailFragment /actionandroid:idid/action_newsListFragment_to_userProfileFragmentapp:destinationid/userProfileFragment //fragmentfragmentandroid:idid/newsDetailFragmentandroid:namecom.example.newsapp.NewsDetailFragmentandroid:labelNews Detailtools:layoutlayout/fragment_news_detail argumentandroid:namearticleIdapp:argTypeinteger //fragmentfragmentandroid:idid/userProfileFragmentandroid:namecom.example.newsapp.UserProfileFragmentandroid:labelUser Profiletools:layoutlayout/fragment_user_profile //navigation主Activity布局 创建主Activity布局文件activity_main.xml包含一个NavHostFragment和BottomNavigationView。 ?xml version1.0 encodingutf-8? androidx.drawerlayout.widget.DrawerLayout xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:apphttp://schemas.android.com/apk/res-autoandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentandroidx.constraintlayout.widget.ConstraintLayoutandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentfragmentandroid:idid/nav_host_fragmentandroid:nameandroidx.navigation.fragment.NavHostFragmentandroid:layout_width0dpandroid:layout_height0dpapp:defaultNavHosttrueapp:navGraphnavigation/nav_graphapp:layout_constraintTop_toTopOfparentapp:layout_constraintBottom_toTopOfid/bottom_navapp:layout_constraintLeft_toLeftOfparentapp:layout_constraintRight_toRightOfparent /com.google.android.material.bottomnavigation.BottomNavigationViewandroid:idid/bottom_navandroid:layout_width0dpandroid:layout_heightwrap_contentandroid:layout_gravitystartapp:menumenu/bottom_nav_menuapp:layout_constraintBottom_toBottomOfparentapp:layout_constraintLeft_toLeftOfparentapp:layout_constraintRight_toRightOfparent //androidx.constraintlayout.widget.ConstraintLayout/androidx.drawerlayout.widget.DrawerLayoutBottomNavigationView菜单 在res/menu目录中创建bottom_nav_menu.xml。 ?xml version1.0 encodingutf-8? menu xmlns:androidhttp://schemas.android.com/apk/res/androiditemandroid:idid/newsListFragmentandroid:icondrawable/ic_newsandroid:titleNews /itemandroid:idid/userProfileFragmentandroid:icondrawable/ic_profileandroid:titleProfile / /menu主Activity 在MainActivity.kt中设置NavController和BottomNavigationView。 class MainActivity : AppCompatActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)val navController findNavController(R.id.nav_host_fragment)val bottomNavigationView findViewByIdBottomNavigationView(R.id.bottom_nav)bottomNavigationView.setupWithNavController(navController)}override fun onSupportNavigateUp(): Boolean {val navController findNavController(R.id.nav_host_fragment)return navController.navigateUp() || super.onSupportNavigateUp()} }第二步创建Fragment 新闻列表Fragment 创建NewsListFragment.kt显示一组新闻文章。 class NewsListFragment : Fragment(R.layout.fragment_news_list) {override fun onViewCreated(view: View, savedInstanceState: Bundle?) {super.onViewCreated(view, savedInstanceState)val navController findNavController()// 示例数据val articles listOf(Article 1, Article 2, Article 3)val adapter ArrayAdapter(requireContext(), android.R.layout.simple_list_item_1, articles)view.findViewByIdListView(R.id.newsListView).adapter adapterview.findViewByIdListView(R.id.newsListView).setOnItemClickListener { _, _, position, _ -val action NewsListFragmentDirections.actionNewsListFragmentToNewsDetailFragment(position)navController.navigate(action)}} }新闻详情Fragment 创建NewsDetailFragment.kt显示选定新闻文章的详细信息。 class NewsDetailFragment : Fragment(R.layout.fragment_news_detail) {override fun onViewCreated(view: View, savedInstanceState: Bundle?) {super.onViewCreated(view, savedInstanceState)val args: NewsDetailFragmentArgs by navArgs()val articleId args.articleIdview.findViewByIdTextView(R.id.articleTextView).text Displaying details for article $articleId} }用户资料Fragment 创建UserProfileFragment.kt显示用户的资料信息。 class UserProfileFragment : Fragment(R.layout.fragment_user_profile) {override fun onViewCreated(view: View, savedInstanceState: Bundle?) {super.onViewCreated(view, savedInstanceState)// 示例用户信息view.findViewByIdTextView(R.id.userNameTextView).text John Doeview.findViewByIdTextView(R.id.userEmailTextView).text john.doeexample.com} }第三步运行和测试 现在我们已经完成了所有必要的步骤可以运行应用程序并测试导航功能。 启动应用程序底部导航栏将显示新闻列表和用户资料页面。在新闻列表页面点击任意文章将导航到新闻详情页面并显示选定文章的详细信息。点击底部导航栏中的用户资料图标将导航到用户资料页面显示用户的相关信息。 结论 通过这个实践案例我们展示了如何使用Jetpack Navigation创建一个简单的新闻应用。我们涵盖了设置导航图、在Fragment之间导航、传递数据、处理返回操作以及集成底部导航。Jetpack Navigation提供了强大且灵活的解决方案使得管理复杂的导航场景变得更加简单和高效。 Best regards!
http://www.zqtcl.cn/news/931428/

相关文章:

  • 自己怎么做dj 视频网站网站推广 济南
  • 2014网站怎么备案怎样建置换平台网站
  • 惠州网站建设信息嘉兴做网站软件
  • 如何做发表文章的网站淮安市建设工程质量监督站网站
  • 做洁净的网站太原便宜做网站的公司
  • 网站设计评级检索标准的网站
  • 做个网站每年都要交域名费吗html静态网页首页模板
  • 网站资源整合与建设wordpress固定链接设置后404
  • 网站历史快照seo推广方法
  • 做淘宝客的的网站有什么要求北京专业网站制作公司
  • 建设网站 知乎个人可以开发app软件吗
  • 网站如何后台管理北京正规网站建设有几种
  • 临沂网站排名高质量的中山网站建设
  • 响应式网站定制开发网络教育全程托管
  • 做网站中的剪辑图片龙岗网站
  • 建设购物网站的意义免费做外贸的网站平台
  • 长沙做电商网站设计重庆观音桥旅游攻略
  • 网站建设的目标与期望动漫设计与制作工资多少
  • 做网站找网站设计公司 长沙
  • 网站维护内容网站代码下载
  • 西安建设主管部门官方网站wordpress返回件
  • 建立免费空间网站南宁seo推广外包
  • 网站初期如何推广用秀米制作h5详细步骤
  • 做网站需要执照嘛开发 网站 团队
  • 怎么提交网站关键词包头人脸检测系统
  • 哪个网站开发是按月付费的婚纱摄影建设网站的目的
  • 站长之家app简单网站制作步骤
  • 网站开发与桌面应用开发wordpress if include
  • 网站怎么做预约小程序江苏省工程建设招标网站
  • python做网站有什么弊端专业做网带