AppClone: Add animation and description text in Cloned Apps page.

Bug: 265251138
Test: manual and robo
Change-Id: I623c01fc74c1ac162917fce8b2fda9754b0a2b4b
This commit is contained in:
Ankita Vyas
2023-01-12 08:38:44 +00:00
parent 8fce459806
commit 7bad1241a4
5 changed files with 89 additions and 2 deletions

View File

@@ -46,6 +46,9 @@ import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.applications.ApplicationsState.AppEntry;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.widget.LottieColorUtils;
import com.airbnb.lottie.LottieAnimationView;
public class ApplicationViewHolder extends RecyclerView.ViewHolder {
@@ -113,6 +116,24 @@ public class ApplicationViewHolder extends RecyclerView.ViewHolder {
return view;
}
static View newHeaderWithAnimation(Context context, ViewGroup parent, int resIntroText,
int resAnimation, int resAppListText) {
ViewGroup view = (ViewGroup) LayoutInflater.from(parent.getContext())
.inflate(R.layout.preference_app_header_animation, parent, false);
TextView introText = view.findViewById(R.id.apps_top_intro_text);
introText.setText(resIntroText);
LottieAnimationView illustrationLottie = view.findViewById(R.id.illustration_lottie);
illustrationLottie.setAnimation(resAnimation);
illustrationLottie.setVisibility(View.VISIBLE);
LottieColorUtils.applyDynamicColors(context, illustrationLottie);
TextView appListText = view.findViewById(R.id.app_list_text);
appListText.setText(resAppListText);
return view;
}
void setSummary(CharSequence summary) {
mSummary.setText(summary);
updateSummaryVisibility();

View File

@@ -1376,8 +1376,9 @@ public class ManageApplications extends InstrumentedFragment
LIST_TYPE_NOTIFICATION);
} else if (mManageApplications.mListType == LIST_TYPE_CLONED_APPS
&& viewType == VIEW_TYPE_APP_HEADER) {
view = ApplicationViewHolder.newHeader(parent,
R.string.desc_cloned_apps_intro_text);
view = ApplicationViewHolder.newHeaderWithAnimation(mContext, parent,
R.string.desc_cloned_apps_intro_text, R.raw.app_cloning,
R.string.desc_cloneable_app_list_text);
} else if (mManageApplications.mListType == LIST_TYPE_CLONED_APPS
&& viewType == VIEW_TYPE_TWO_TARGET) {
view = ApplicationViewHolder.newView(