千家信息网

Android怎么仿直播类app赠送礼物功能

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要为大家展示了"Android怎么仿直播类app赠送礼物功能",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Android怎么仿直播类app赠送礼
千家信息网最后更新 2026年11月01日Android怎么仿直播类app赠送礼物功能

这篇文章主要为大家展示了"Android怎么仿直播类app赠送礼物功能",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Android怎么仿直播类app赠送礼物功能"这篇文章吧。

直播界面

实现的是播放本地的视频文件:

/** * 直播界面,用于对接直播功能 */public class LiveFrag extends Fragment { private ImageView img_thumb; private VideoView video_view; @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.frag_live, null); img_thumb = view.findViewById(R.id.img_thumb); img_thumb.setVisibility(View.GONE); video_view = view.findViewById(R.id.video_view); video_view.setVisibility(View.VISIBLE); video_view.setVideoURI(Uri.parse("android.resource://" + getActivity().getPackageName() + "/" + R.raw.video_1)); video_view.start(); video_view.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { video_view.setVideoURI(Uri.parse("android.resource://" + getActivity().getPackageName() + "/" + R.raw.video_1)); //或 //mVideoView.setVideoPath(Uri.parse(_filePath)); video_view.start(); } }); return view; }}

布局文件 frag_live.xml 如下:

滑动隐藏效果

需要实现的效果如下:

自定义DialogFragment,使用ViewPager,第一个为空的Fragment,第二个为我们需要的Fragment,左右滑动来切换显示和隐藏效果。

观众功能交互页面 InteractiveFrag 如下:

/** * 观众功能交互页面, 滑动隐藏效果 */public class InteractiveFrag extends DialogFragment { public View view; public Context myContext; private ViewPager vp_interactive; private LayerFrag layerFrag; @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { view = inflater.inflate(R.layout.frag_interactive, null); // 初始化 initView(); initData(); return view; } /** * 初始化View */ public void initView() { vp_interactive = view.findViewById(R.id.vp_interactive); } /** * 初始化数据 */ public void initData() { // EmptyFrag:什么都没有 // LayerFrag:交互界面 // 这样就达到了滑动隐藏交互的需求 vp_interactive.setAdapter(new FragmentPagerAdapter(getChildFragmentManager()) { @Override public int getCount() { return 2; } @Override public Fragment getItem(int position) { if (position == 0) { return new EmptyFrag(); // 返回空界面的fragment } else if (position == 1) { return layerFrag = new LayerFrag(); // 返回交互界面的frag } else { // 设置默认 return new EmptyFrag(); } } }); // 设置默认显示交互界面 vp_interactive.setCurrentItem(1); // 同时将界面改为resize已达到软键盘弹出时Fragment不会跟随移动 getDialog().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); } @Override public Dialog onCreateDialog(Bundle savedInstanceState) { // 设置DialogFragment的样式,这里的代码最好还是用我的,大家不要改动 Dialog dialog = new Dialog(getActivity(), R.style.MainDialog) { @Override public void onBackPressed() { super.onBackPressed(); getActivity().finish(); } }; return dialog; }}

frag_interactive.xml文件如下:

用户交互页 LayerFrag:

public class LayerFrag extends Fragment { @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { return inflater.inflate(R.layout.frag_layer, null); }}

frag_layer:

礼物 动画 高度 界面 直播 效果 键盘 功能 时间 标识 更新 内容 布局 页面 代码 容器 文件 篇文章 类型 观众 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网高科技 广东万易互联网科技有限公司惠州分公司 广州大一互联网络科技有限公司 疫情对互联网科技公司影响 合肥互联网科技公司 广州宏创互联网科技 融势互联网科技 狮子座互联网科技培训 互联网科技论坛 中正互联网科技招聘 晓花互联网科技有限公司网址 深圳市优智互联网科技有限公司 浙南科技城互联网大厦建设工程 河南住房之家互联网科技 互联网在线教育科技创业 工业互联网山东科技大学 广西科技产业互联网是什么 互联网科技创业有什么好项目 如何强化互联网金融科技 武汉亿视互联网科技有限公司 高科技互联网 科技互联网项目 奔汉互联网科技 开启互联网科技时代小说 现代互联网科技股 广西互联网科技孵化中心 上海同邻互联网科技有限公司规模 陕西九四连强互联网科技有限公司 美国五大互联网科技公司市值多少 数字科技和互联网金融哪个好
0