网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
友情提示:本项目使用stage模型,ArkTs语言,api9。
先看项目结构,本项目所有代码都在Index.ets文件下,图片资源在image文件夹和resources下的media文件下都有分布。
这项目就一个界面,看似简单,其实一步一个难点,比上一篇文章的微信项目有过之无不及。主要难点有以下几个:
1、头像昵称的叠加布局
2、导航栏的隐藏和显示
3、评论弹窗的动画效果和单例显示
4、点击图片预览
在开始构建页面之前,先解决一下数据问题,我先定义一个数据模型,然后自己手写几条朋友圈数据:
class MomentClass {
public nickName: string; //昵称
public content: string; //内容
public date: string; //发表日期
public showC: boolean; //是否显示评论和赞弹窗
public images: string[]; //内容图片列表
constructor(nickName: string,content: string,date: string,showC: boolean,images:string[]) {
this.nickName = nickName;
this.content = content;
this.date = date;
this.showC = showC;
this.images = images;
}
}
@State momentList: MomentClass[] = [
new MomentClass(‘老张1’,‘今朝有酒今朝醉’,‘8天前’,false,[‘/image/moment_1.png’]),
new MomentClass(‘老张