直播app源码,用户首次登录时弹出左右滑动导航页
直播app源码,用户首次登录时弹出左右滑动导航页
第一步:MainActivity中添加一个跳转导航页的按钮,布局文件activity_main.xml:
1 | <br><?xml version= "1.0" encoding= "utf-8" ?><br><LinearLayout xmlns:android= "http://schemas.android.com/apk/res/android" <br> xmlns:app= "http://schemas.android.com/apk/res-auto" <br> xmlns:tools= "http://schemas.android.com/tools" <br> android:layout_width= "match_parent" <br> android:layout_height= "match_parent" <br> android:orientation= "horizontal" <br> android:gravity= "center" <br> tools:context= ".MainActivity" ><br> <br> <Button<br> android:id= "@+id/jump_guide_activity" <br> android:layout_width= "wrap_content" <br> android:layout_height= "wrap_content" <br> android:text= "新手引导页" /><br> <br></LinearLayout><br>MainActivity.java代码:<br>package com.xw.guidepagedemo;<br> <br>import androidx.appcompat.app.AppCompatActivity;<br> <br>import android.content.Intent;<br>import android.os.Bundle;<br>import android.view.View;<br>import android.widget.Button;<br> <br> public class MainActivity extends AppCompatActivity implements View.OnClickListener {<br> <br> private Button mJumpGuidePage;<br> <br> @Override<br> protected void onCreate(Bundle savedInstanceState) {<br> super.onCreate(savedInstanceState);<br> setContentView(R.layout.activity_main);<br> initview();<br> initListener();<br> }<br> private void initview() {<br> //跳转导航页的按钮<br> mJumpGuidePage = findViewById(R.id.jump_guide_activity);<br> }<br> <br> private void initListener() {<br> //跳转导航页的按钮的点击事件<br> mJumpGuidePage.setOnClickListener(this);<br> }<br> <br> @Override<br> public void onClick(View v) {<br> Intent intent = new Intent();<br> intent.setClass(this,GuidePageActivity. class );<br> startActivity(intent);<br> }<br>} |
第二步:创建导航页的Activity:GuidePageActivity.class和布局文件activity_page_guide.xml:
1 | <br><?xml version= "1.0" encoding= "utf-8" ?><br><RelativeLayout xmlns:android= "http://schemas.android.com/apk/res/android" <br> xmlns:app= "http://schemas.android.com/apk/res-auto" <br> xmlns:tools= "http://schemas.android.com/tools" <br> android:layout_width= "match_parent" <br> android:layout_height= "match_parent" <br> android:gravity= "center" <br> tools:context= ".GuidePageActivity" ><br> <br> <androidx.viewpager.widget.ViewPager<br> android:id= "@+id/guide_viewpager" <br> android:layout_width= "match_parent" <br> android:layout_height= "match_parent" /><br> <br> <RelativeLayout<br> android:layout_width= "wrap_content" <br> android:layout_height= "wrap_content" <br> android:layout_alignParentBottom= "true" <br> android:layout_centerHorizontal= "true" <br> android:layout_marginBottom= "50dp" <br> ><br> <!-- 用于动态添加shape圆形灰色小圆点的指示器的布局 --><br> <LinearLayout<br> android:id= "@+id/indicator_container" <br> android:layout_width= "wrap_content" <br> android:layout_height= "wrap_content" <br> android:orientation= "horizontal" ><br> </LinearLayout><br> <!-- 用于遮盖在灰色小圆点上面的红色小圆点 --><br> <ImageView<br> android:id= "@+id/red_dot" <br> android:layout_width= "wrap_content" <br> android:layout_height= "wrap_content" <br> android:src= "@drawable/shape_circle_selected" <br> /><br> </RelativeLayout><br> <br></RelativeLayout> |
上面的布局文件中,通过相对布局的进行组件的布局,在ViewPager组件上添加一个相对布局的指示器容器,指示器容器中包含一个用于动态添加shape圆形灰色小圆点的线性布局和一个ImageView组件。
以上就是直播app源码,用户首次登录时弹出左右滑动导航页, 更多内容欢迎关注之后的文章
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现