现在越来越多的手机软件具备社交聊天功能,所以聊天界面的使用便变得很频繁,下面我们将自己实现一个简单的类似QQ的聊天界面。 首先来看整个工程的目录结构: 目录结构很简单,主要难点在Adapter。 然后看实现的效果图: 从效果图上看出,界面底部用了一个EditText和一个Button,水平分布,上面放了一个RecyclerView,布局代码如下:<?xml version="1.0"
转载 2024-02-23 12:57:47
78阅读
最近在用QQ的时候发现了一个有意思的小细节,如图所示:可以看到Tab按钮都有一个随着用户拖动而转动的特效,一开始被这个效果惊艳到了,QQ还是很细致的,注重细节和用户体验。于是利用空闲时间实现了这个效果,所有代码均用kotlin实现,项目效果如图所示:哈哈是不是一模一样呢,完整的实现代码并不长,只有200多行,但是找思路花了一些时间,也遇到过许多弯路,不过最后都还是坚持下来了,实现的思路概括一下:首
参考: BubblePopupWindow:https://github.com/smuyyh/BubblePopupWindow PopupMenuView:https://github.com/kareluo/PopupMenuView Android仿QQ长按删除弹出框:项目中要实现类似QQ长按气泡弹窗的效果,GitHub上找了些项目太杂了,还有些在Android P上适配不好,于是站在巨人
# Android TabLayout 切换动画实现指南 在 Android 开发中,`TabLayout` 是一个常用的控件,用于实现选项卡页面的切换。然而,简单的切换效果可能会显得单调,为了提升用户体验,我们可以添加切换动画。本文将指导你如何实现 `TabLayout` 切换动画。 ## 工作流程概述 下面是实现的整体流程,我们将通过以下步骤来完成任务: | 步骤 | 描述 | |--
原创 8月前
110阅读
# Android TabLayout 过渡动画教程 ## 1. 整体流程 首先,让我们来看一下实现“android tablayout 过渡动画”的整体流程: ```mermaid journey title Android TabLayout 过渡动画实现流程 section 确定需求 section 学习基本使用 section 实现过渡动画 s
原创 2024-06-21 06:55:08
246阅读
推荐一款优雅的页面过渡动画插件:Animsition animsitionA simple and easy jQuery plugin for CSS animated page transitions.项目地址:https://gitcode.com/gh_mirrors/an/animsition 在网页设计中,平滑的页面过渡效果往往能提升用户体验,给访客留下深刻的印象。今天,我要向大家推荐
转载 9月前
16阅读
前言终于,终于写完了。这个项目是我从年前开始写的,然后今年过年没有回家,除了大年三十没有提交代码,有空余时间就一直在写,过完年大年初一就开始写了~~。功夫不负有心人,终于,现在来看是一个成熟度较为满意的作品,才敢拿出来跟大家一起分享。缘起忘记关注哪个公众号了,真正接触flutter是18年,算起来是比较晚的了。不过勤能补拙,现在也来的及,只要想学就不晚。如果学习一个知识点,就写个demo就以为掌
文章目录前言分析实现字体缩放动画实现 Indicator 的长度变化动画一、准备工作二、让 TextView 撑满 TabView三、实现滑动时 Indicator 的动画效果写在最后完整 demo 地址参考 前言最近在做的一个小说阅读 APP,打算模仿掌阅实现 TabLayout 切换时的动画效果。首先看下掌阅的切换效果:接下来是我的实现效果:分析切换动画主要有两部分组成:字体的缩放动画:进入
转载 2023-10-08 13:47:31
503阅读
仿qq空间图片显示/仿qq空间图片显示/.classpath仿qq空间图片显示/.project仿qq空间图片显示/.settings/仿qq空间图片显示/.settings/org.eclipse.jdt.core.prefs仿qq空间图片显示/AndroidManifest.xml仿qq空间图片显示/assets/仿qq空间图片显示/bin/仿qq空间图片显示/bin/AndroidManif
周六日的生活就搭在这上面了,做了一个聊天功能的app的demo,最近什么都不想干,但是也不能放弃,打算最近不弄Android了,想去学习一下js,因为接了一个开发网站的项目,但是目前的app项目做了一半,我我一个人做,老师把任务分下来,全部压在我头上了,前几天给一个女生表白失败了,心情超烂,程序员注定孤独终老吧,哎,什么都不说了,不然太对不起你们来看我的这篇博文了!今天我要说的是仿qq聊天界面的实
转载 2023-11-02 10:39:57
31阅读
文末对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。 整理的这些架构技术希望对Android开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。最后想要拿高薪实现技术提升薪水得到质的飞跃。最快捷的方式,就是有人可以带着你一起分析,这样学习起来最为高效,所以为了大家能够顺利进阶中高级、架
前言Material Design 中有一种效果,向上滑动的时候隐藏 Toolbar,向下滑动的时候显示 Toolbar(这里的向上和向下是手势方向,下文中也一样,不再重复说明)。具体效果可以参考下面的链接。 https://material.io/guidelines/patterns/scrolling-techniques.html#scrolling-techniques-behavior
转载 11月前
183阅读
Android 滑动效果入门篇(一)—— ViewFlipperAndroid 滑动效果入门篇(二)—— Gallery Android 滑动效果基础篇(三)—— Gallery仿图像集浏览Android 滑动效果基础篇(四)—— Gallery + GridView Android 滑动效果进阶篇(五)—— 3D旋转Android 滑动效果进阶篇(六)—— 倒影效果&nbsp
转载 4月前
357阅读
动画的分类:1、帧动画(Frame)       类似电影胶片,由很多帧图片,通过不间断的改变,来产生动画效果。 2、补间动画(Tween)     对View控件进行变换(平移,缩放,旋转,透明度)来产生动画效果。  动画的分类:常用的属性如下:帧动画:public class Fram
最近接到一个任务,就是要修改原来用的官方support包TabLayout中的指示器线宽,改成固定值,当然网上有什么反射加padding什么的,可是治标不治本,切Tab过渡动画也加不了,什么?你告诉我github又xxx类似控件,可是为什么我要放弃google大神的源码呢,改改就能增加新功能了呢,为了达到目的,我就开始了下面一系列骚操作。0. 老规矩,先放效果图 1. 骚操作之一:copy su
转载 2024-01-30 08:22:37
101阅读
最近做一个登录的界面,我脑子里一下就想到QQ的登录界面,简单,美观,所以就找了些资料实现了下,现在整理下先来看下效果图       1.首先是布局文件XML文件,不解释直接上1>主界面 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/an
自定义view--TipViewTipView其实就是类似QQ长按消息弹出来的横放的提示框。通过看书和参考各位大神的博客(再次对大神表示恭敬),我用了一下午时间写完了这么一个view。先来看图:1 自定义TipView思路1 首先我们考虑是继承View还是ViewGroup其实TipView直观看更像是一个group,里面有子view。但其实我们并不需要继承ViewGroup,因为我们不用像Lin
仿QQ消息列表左滑弹出菜单,标记已读和删除话不多说,看到这样的效果心动了么?1.先上build .gradle,dependencies里面要这样写,其实就是导入v7里面的recyclerView。要用butterknife的话, 记得加到这里来:dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') tes
这几天在研究viewpager,简单的写一下如何使用viewpager实现类似于qq的“最近联系人、好友、群组”的界面切换(不知道他们是不是用这个方法实现的)。viewpager已经在android-sdk中加入了,具体的位置在%android_sdk_home%\android-compatibility\v4,%android_sdk_home%是你的android-sdk-windows目录
在app开发中我们经常会遇到在内容详细页中界面元素比较复杂,或者格式不确定这种情况,通常我们会利用UIWebView来加载html来处理这样的事件,因为这样不仅简单而且可控性更好,我们不会再因为内容格式的改变,再去苦逼的改代码,一层层的解析数据,在苦苦的等待审核,但是因此也会有一些情况出现,比如我们想要在界面上加上很酷炫的效果,或者有些效果是必须要嵌入原生的元素,这样我们又会遇到很多问题,比如怎么
转载 2024-09-06 18:48:27
42阅读
  • 1
  • 2
  • 3
  • 4
  • 5