【发布时间】:2021-10-21 11:05:05
【问题描述】:
我有一些项目要通过回收站视图显示在 android 应用程序中。我已经成功实现并从服务器获取数据。项目显示在回收站视图列表中。我还对列表顶部的最新项目进行了排序。我已经在后端使用 php 代码和 SQL 对列表顶部的最新项目进行排序并成功完成。但现在我想在列表中实现这样的文本:- NEW。这意味着它只会显示最新项目并在 5 天后自动删除。
我已经在前端成功实现了新标签并且它正在显示,但是新标签只显示当前日期。 我想再展示 5 天的“新”标签。我提出了逻辑,但它对我没有帮助,并且仅显示当前日期。这是我显示 NEW 的代码:-
MyAdapter 类 --> onBindViewHolder()
Json data:-
"creation_date": "2021-09-06"
final String creation_date = ModelClass.getCreation_date(); //JSON data "creation date". getCreation_date() invoking Getter method from model class"
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
String Current_date = sdf.format(c.getTime());
c.add(Calendar.DAY_OF_MONTH, 5); //here I have increase the date to 5
String EndDate = sdf.format(c.getTime());
if (Current_date.equals(creation_date)) {
myViewHolder.creation_date.setVisibility(View.VISIBLE);
}
else if (creation_date.equals(EndDate)) {
myViewHolder.creation_date.setVisibility(View.VISIBLE);
} else {
myViewHolder.creation_date.setVisibility(View.GONE);
}
主要问题是如何在创建日期再显示 5 天和 5 天后显示 NEW 标签 Textview(creation_date) Visibility will be GONE?
现在如果我的创建日期与当前日期相同,那么它会显示新标签,但我想再显示 5 天,5 天后它应该被删除。
现在输出显示如下:-
【问题讨论】:
-
后端通常由三部分组成:服务器、应用程序和数据库。所以在我的情况下,它是一个数据库,或者你可以说一个服务器。 @javdromero
-
一些需要补充的细节:每个项目数据当前是否有一个与之关联的日期/时间,回收站视图实现可以访问?您是否能够更新项目布局,或者您是否仅限于每个项目的单行文本?您需要日期时间算术方面的帮助吗?
-
如果是日期时间算术,那么是的,我需要帮助。现在我不知道如何实现这个功能。请记住,当我们打开任何电子商务应用程序或类似的东西时,我们会看到产品上突出显示的“新”标签,这是我想要实现的。 @安迪
标签: android android-recyclerview logic