Merge branch 'feature/v1.0.2' of gitlab.zhidaoauto.com:ecos/yycp-service/Launcher into feature/v1.0.2
This commit is contained in:
@@ -59,6 +59,7 @@ public class AppNavigatorFragment extends MvpFragment<AppNavigatorView, AppNavig
|
||||
private DiscreteScrollView scroller;
|
||||
|
||||
private static final int CARD_SIZE = 6;
|
||||
private AppIndicatorAdapter appIndicatorAdapter;
|
||||
|
||||
@Override
|
||||
protected int getLayoutId() {
|
||||
@@ -88,7 +89,7 @@ public class AppNavigatorFragment extends MvpFragment<AppNavigatorView, AppNavig
|
||||
|
||||
apps = NavigatorApps.getApps();
|
||||
|
||||
AppIndicatorAdapter appIndicatorAdapter = new AppIndicatorAdapter(getContext(), apps);
|
||||
appIndicatorAdapter = new AppIndicatorAdapter(getContext(), apps);
|
||||
scroller.setAdapter(appIndicatorAdapter);
|
||||
scroller.scrollToPosition(Integer.MAX_VALUE / 2 - 1);
|
||||
//mNavigation.setOnClickListener( view -> {
|
||||
@@ -184,6 +185,9 @@ public class AppNavigatorFragment extends MvpFragment<AppNavigatorView, AppNavig
|
||||
Logger.d(TAG, "onCurrentItemChanged--position--" + i % CARD_SIZE);
|
||||
int currentPosition = (i - 2) % CARD_SIZE;
|
||||
|
||||
if (!scroller.isComputingLayout()) {
|
||||
appIndicatorAdapter.setCurrentPos(i);
|
||||
}
|
||||
//this.currentPosition=currentPosition;
|
||||
AppServiceHandler.getMogoCardManager().switch2(apps.get(i % CARD_SIZE).mModuleType);
|
||||
|
||||
|
||||
@@ -3,6 +3,8 @@ package com.mogo.module.apps.adapter;
|
||||
import android.content.Context;
|
||||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import com.mogo.module.apps.R;
|
||||
import com.mogo.module.apps.adapter.base.RecycleBaseAdapter;
|
||||
import com.mogo.module.apps.adapter.base.RecycleViewHolder;
|
||||
@@ -14,6 +16,9 @@ import java.util.List;
|
||||
* 2020-03-09.
|
||||
*/
|
||||
public class AppIndicatorAdapter extends RecycleBaseAdapter<NavigatorApp> {
|
||||
|
||||
|
||||
private int currentPos;
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@@ -30,5 +35,20 @@ public class AppIndicatorAdapter extends RecycleBaseAdapter<NavigatorApp> {
|
||||
ImageView ivIndicator = holder.getView(R.id.module_apps_id_app_icon);
|
||||
ivIndicator.setImageResource(integer.getmIconId());
|
||||
holder.setText(R.id.module_apps_id_app_name,integer.getmName() );
|
||||
|
||||
TextView tvTitle = holder.getView(R.id.module_apps_id_app_name);
|
||||
if (currentPos==holder.getLayoutPosition()) {
|
||||
ivIndicator.setImageResource(integer.getmIconId());
|
||||
tvTitle.setTextColor(ContextCompat.getColor(context,R.color.white));
|
||||
}else {
|
||||
tvTitle.setTextColor(ContextCompat.getColor(context,R.color.white_80));
|
||||
ivIndicator.setImageResource(integer.getmUncheckedIconId());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void setCurrentPos(int currentPos){
|
||||
this.currentPos=currentPos;
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.mogo.module.apps.utils;
|
||||
|
||||
import android.view.View;
|
||||
import androidx.annotation.FloatRange;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import com.mogo.module.apps.R;
|
||||
import com.yarolegovich.discretescrollview.transform.DiscreteScrollItemTransformer;
|
||||
import com.yarolegovich.discretescrollview.transform.Pivot;
|
||||
@@ -26,7 +27,7 @@ public class CardScaleTransformer implements DiscreteScrollItemTransformer {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void transformItem(View item, float position) {
|
||||
public void transformItem(View item, RecyclerView.ViewHolder childViewHolder, float position) {
|
||||
|
||||
item= item.findViewById(R.id.module_apps_id_app_icon);
|
||||
pivotX.setOn(item);
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
android:text="全部应用"
|
||||
android:maxLines="1"
|
||||
android:layout_marginTop="@dimen/dp_24"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textColor="@color/white_80"
|
||||
android:textSize="@dimen/dp_26"
|
||||
/>
|
||||
|
||||
|
||||
@@ -352,8 +352,10 @@ public class DiscreteScrollLayoutManager extends LinearLayoutManager {
|
||||
int clampAfterDistance = scrollToChangeCurrent * transformClampItemCount;
|
||||
for (int i = 0; i < recyclerViewProxy.getChildCount(); i++) {
|
||||
View child = recyclerViewProxy.getChildAt(i);
|
||||
|
||||
//RecyclerView.ViewHolder childViewHolder = recyclerView.getChildViewHolder(child);
|
||||
float position = getCenterRelativePositionOf(child, clampAfterDistance);
|
||||
itemTransformer.transformItem(child, position);
|
||||
itemTransformer.transformItem(child,null, position);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
package com.yarolegovich.discretescrollview.transform;
|
||||
|
||||
import android.view.View;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
/**
|
||||
* Created by yarolegovich on 02.03.2017.
|
||||
*/
|
||||
|
||||
public interface DiscreteScrollItemTransformer {
|
||||
void transformItem(View item, float position);
|
||||
void transformItem(View item, RecyclerView.ViewHolder childViewHolder,float position);
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.yarolegovich.discretescrollview.transform;
|
||||
|
||||
import android.view.View;
|
||||
import androidx.annotation.FloatRange;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
/**
|
||||
* Created by yarolegovich on 03.03.2017.
|
||||
@@ -21,7 +22,7 @@ public class ScaleTransformer implements DiscreteScrollItemTransformer {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void transformItem(View item, float position) {
|
||||
public void transformItem(View item, RecyclerView.ViewHolder childViewHolder, float position) {
|
||||
pivotX.setOn(item);
|
||||
pivotY.setOn(item);
|
||||
float closenessToCenter = 1f - Math.abs(position);
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
./gradlew :foudations:mogo-connection:clean :foudations:mogo-connection:uploadArchives
|
||||
./gradlew :libraries:map-amap:clean :libraries:map-amap:uploadArchives
|
||||
./gradlew :libraries:mogo-map:clean :libraries:mogo-map:uploadArchives
|
||||
./gradlew :modules:mogo-module-apps:clean :modules:mogo-module-apps:uploadArchives
|
||||
./gradlew :services:mogo-service:clean :services:mogo-service:uploadArchives
|
||||
./gradlew :modules:mogo-module-common:clean :modules:mogo-module-common:uploadArchives
|
||||
./gradlew :modules:mogo-module-map:clean :modules:mogo-module-map:uploadArchives
|
||||
|
||||
Reference in New Issue
Block a user