Merge branch 'dev' of gitlab.zhidaoauto.com:ecos/yycp-service/Launcher into dev

This commit is contained in:
wangcongtao
2020-09-18 09:45:56 +08:00
67 changed files with 209 additions and 183 deletions

2
.idea/misc.xml generated
View File

@@ -4,7 +4,7 @@
<asm skipDebug="false" skipFrames="false" skipCode="false" expandFrames="false" />
<groovy codeStyle="LEGACY" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="JDK" project-jdk-type="JavaSDK">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
</project>

View File

@@ -83,7 +83,7 @@ public class MogoApplication extends AbsMogoApplication {
MogoModulePaths.addModule( new MogoModule( TanluApiConst.MODULE_PATH, TanluApiConst.MODULE_NAME ) );
MogoModulePaths.addBaseModule( new MogoModule( TanluConstants.TAG, TanluConstants.MODEL_NAME ) );
MogoModulePaths.addModule( new MogoModule( MogoServicePaths.PATH_SHARE, "ShareControl" ) );
MogoModulePaths.addBaseModule( new MogoModule( MogoServicePaths.PATH_SHARE, "ShareControl" ) );
MogoModulePaths.addModule( new MogoModule( LeftPanelConst.PATH_NAME, LeftPanelConst.MODULE_NAME ) );

View File

@@ -27,7 +27,7 @@ public class BaseFloatDialog extends Dialog {
}
private void addFlag() {
getWindow().setType(WindowManager.LayoutParams.FIRST_SYSTEM_WINDOW + 10);
getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN
| WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION
| WindowManager.LayoutParams.FLAG_LOCAL_FOCUS_MODE);

View File

@@ -24,6 +24,7 @@ class GuideFragment : MvpFragment<GuideConstract.View, GuidePresenter>(), GuideC
}
private var duringTime: Long = 0L
private var recordCount = 0
override fun getLayoutId(): Int {
return R.layout.module_guide_fragment
@@ -90,15 +91,18 @@ class GuideFragment : MvpFragment<GuideConstract.View, GuidePresenter>(), GuideC
}
fun closeGuideFragment() {
val recordTime = System.currentTimeMillis() - duringTime
val currentItem = moduleGuideViewPager.currentItem + 1
AnalyticsUtil.track(INVOKE_TRACK_PLAY_PASS_ID,
hashMapOf(INVOKE_TRACK_PASS_TIME to currentItem
, INVOKE_TRACK_PLAY_TIME to recordTime))
Logger.d(TAG, "closeGuideFragment -> recordTime : $recordTime , currentItem : $currentItem")
recordCount = moduleGuideViewPager.currentItem + 1
destroy()
}
private fun track() {
val recordTime = System.currentTimeMillis() - duringTime
AnalyticsUtil.track(INVOKE_TRACK_PLAY_PASS_ID,
hashMapOf(INVOKE_TRACK_PASS_TIME to recordCount
, INVOKE_TRACK_PLAY_TIME to recordTime))
Logger.d(TAG, "closeGuideFragment -> recordTime : $recordTime , recordCount : $recordCount")
}
private fun destroy() {
speak(context!!, context!!.resources.getString(R.string.module_guide_voice_page_end), object : IMogoVoiceCmdCallBack {
override fun onTTSEnd(ttsId: String?, tts: String?) {
@@ -119,6 +123,7 @@ class GuideFragment : MvpFragment<GuideConstract.View, GuidePresenter>(), GuideC
override fun onDestroy() {
super.onDestroy()
track()
invokeAuthorize()
}
}

View File

@@ -6,9 +6,9 @@
<string name="module_guide_skip">跳过</string>
<string name="module_guide_voice_page_one">欢迎使用蘑菇出行,您下次可以直接对我说,打开蘑菇出行来直接进入应用,点击左下方按钮进行摄像头设置</string>
<string name="module_guide_voice_page_two">左边是道路事件的播报,点击右边地图上的事件标示可以查看事件详情</string>
<string name="module_guide_voice_page_two">左边是道路事件的播报,点击右边地图上的事件标示可以查看事件详情,或者直接唤醒小智说,中关村附近堵不堵,来查询目的地周围路况</string>
<string name="module_guide_voice_page_three">这里是道路信息显示,点击后可查看事件详情</string>
<string name="module_guide_voice_page_four">这里是事件汇总,您可以查看您参与的事件和您的分享记录</string>
<string name="module_guide_voice_page_five">更多设置,在左上角的设置功能中,点击右下角的分享,可以把路况分享给其他车友</string>
<string name="module_guide_voice_page_five">更多设置,在左上角的设置功能中,点击右下角的分享,可以把路况分享给其他车友,或者直接唤醒小智说,上报路况</string>
<string name="module_guide_voice_page_end">我们希望让您的出行更加安全高效,更多功能等着你去发现,快去体验体验吧</string>
</resources>

View File

@@ -70,8 +70,10 @@ class GridBtnManager(val context: Context, private val container: GridLayout, pr
generateShareButton(FixableButton(poiType = IMogoTanluProvider.TYPE_DENSE_FOG, title = "浓雾"))
} else {
val btnList = GsonUtil.arrayFromJson(config, FixableButton::class.java)
btnList.forEach { btn ->
generateShareButton(btn)
if(btnList!=null&&btnList.isNotEmpty()) {
btnList.forEach { btn ->
generateShareButton(btn)
}
}
}
}

View File

@@ -1086,7 +1086,7 @@ public class TanluListWindow extends RelativeLayout implements IMogoMarkerClickL
if (!NetworkUtils.isConnected(getContext())) { //没有网络
TipToast.shortTip("分享失败,请检查网络",new TipDrawable(getResources().getDrawable(R.drawable.module_tanlu_upload_fail)));
} else if(TanluServiceManager.getMogoStatusManager().isMainPageOnResume()) {
} else {
float bearing = TanluServiceManager.getLocationClient().getLastKnowLocation().getBearing(); //角度
Logger.d(TAG, "onMarkerInfo event.type = " + event.type + " >>event.lat = " + event.lat + " >>event.lon = " + event.lon + " >>event.imageUrl =" + event.imageUrl);
String poiType = event.type;
@@ -1095,49 +1095,51 @@ public class TanluListWindow extends RelativeLayout implements IMogoMarkerClickL
Logger.d(TAG, "onMarkerInfo share poiType = " + poiType + " --isCumtom = " + isCumtom + " >> getMathRandom = " + getMathRandom() + " >>> bearing = " + bearing + ">>>fromType = " + fromType);
if (!fromType.equals("5")) {
if (isCumtom && !poiType.equals("0")) {
double lat = TanluServiceManager.getLocationClient().getLastKnowLocation().getLatitude();
double lon = TanluServiceManager.getLocationClient().getLastKnowLocation().getLongitude();
Log.d(TAG, "onMarkerInfo lat = " + lat + " >>>> lon = " + lon);
String cityName = TanluServiceManager.getLocationClient().getLastKnowLocation().getCityName();
String address = TanluServiceManager.getLocationClient().getLastKnowLocation().getAddress();
MarkerExploreWay markerExploreWay = new MarkerExploreWay();
markerExploreWay.setCityName(cityName);
markerExploreWay.setPoiType(poiType);
MarkerLocation markerLocation = new MarkerLocation();
markerLocation.setLat(lat);
markerLocation.setLon(lon);
markerLocation.setAddress(address);
MarkerShowEntity markerShowEntity = new MarkerShowEntity();
markerShowEntity.setBindObj(markerExploreWay);
markerShowEntity.setTextContent(address);
markerShowEntity.setMarkerType(TanluConstants.MODEL_NAME);
markerShowEntity.setMarkerLocation(markerLocation);
// 不管在不在前台,都要提示分享成功
AIAssist.getInstance(getContext()).speakTTSVoice((
String.format(voiceShareSuccessTts, getMathRandom())), null);
TipToast.shortTip("分享成功",new TipDrawable(getResources().getDrawable(R.drawable.module_tanlu_upload_success)));
TipToast.shortTip("分享成功", new TipDrawable(getResources().getDrawable(R.drawable.module_tanlu_upload_success)));
if(TanluServiceManager.getMogoStatusManager().isMainPageOnResume()) {
double lat = TanluServiceManager.getLocationClient().getLastKnowLocation().getLatitude();
double lon = TanluServiceManager.getLocationClient().getLastKnowLocation().getLongitude();
Log.d(TAG, "onMarkerInfo lat = " + lat + " >>>> lon = " + lon);
String cityName = TanluServiceManager.getLocationClient().getLastKnowLocation().getCityName();
String address = TanluServiceManager.getLocationClient().getLastKnowLocation().getAddress();
MarkerExploreWay markerExploreWay = new MarkerExploreWay();
markerExploreWay.setCityName(cityName);
markerExploreWay.setPoiType(poiType);
IMogoMarker mogoMarker = TanluServiceManager.getServiceApis().getMarkerService().drawMarker(markerShowEntity);
mogoMarker.setClickable(false);
MarkerLocation markerLocation = new MarkerLocation();
markerLocation.setLat(lat);
markerLocation.setLon(lon);
markerLocation.setAddress(address);
//开启动画
mogoMarker.startScaleAnimationWithAlpha(0, 1.2f, 0, 1.2f, 0f, 1f, 300, new LinearInterpolator(), new OnMarkerAnimationListener() {
@Override
public void onAnimStart() {
Logger.d(TAG, " onAnimStart ---1----> ");
}
MarkerShowEntity markerShowEntity = new MarkerShowEntity();
markerShowEntity.setBindObj(markerExploreWay);
markerShowEntity.setTextContent(address);
markerShowEntity.setMarkerType(TanluConstants.MODEL_NAME);
markerShowEntity.setMarkerLocation(markerLocation);
@Override
public void onAnimEnd() {
if (mogoMarker.isDestroyed()) {
return;
IMogoMarker mogoMarker = TanluServiceManager.getServiceApis().getMarkerService().drawMarker(markerShowEntity);
mogoMarker.setClickable(false);
//开启动画
mogoMarker.startScaleAnimationWithAlpha(0, 1.2f, 0, 1.2f, 0f, 1f, 300, new LinearInterpolator(), new OnMarkerAnimationListener() {
@Override
public void onAnimStart() {
Logger.d(TAG, " onAnimStart ---1----> ");
}
mogoMarker.startScaleAnimation(1.2f, 1, 1.2f, 1, 100, new LinearInterpolator(), null);
}
});
@Override
public void onAnimEnd() {
if (mogoMarker.isDestroyed()) {
return;
}
mogoMarker.startScaleAnimation(1.2f, 1, 1.2f, 1, 100, new LinearInterpolator(), null);
}
});
}
} else {
Logger.e(TAG, "onMarkerInfo share onCompleted poiType = -1 --- else ---->");
}

View File

@@ -55,6 +55,7 @@ public class V2XScenarioHistoryFragment
mEmptyView = findViewById(R.id.viewEmpty);
mClHistoryList = findViewById(R.id.clHistoryList);
mRecyclerView = findViewById(R.id.recyclerView);
mRecyclerView.addItemDecoration(new SpacesItemDecoration((int) getResources().getDimension(R.dimen.share_item_padding)));
mV2XScenarioHistoryAdapter = new V2XScenarioHistoryAdapter(mV2XHistoryScenarioData);
mRecyclerView.setAdapter(mV2XScenarioHistoryAdapter);
mRecyclerView.addItemDecoration(new SpacesItemDecoration(14));

View File

@@ -13,6 +13,7 @@ import androidx.recyclerview.widget.RecyclerView;
import com.mogo.commons.mvp.MvpFragment;
import com.mogo.module.v2x.R;
import com.mogo.module.v2x.SpacesItemDecoration;
import com.mogo.module.v2x.adapter.V2XShareEventAdapter;
import com.mogo.module.v2x.entity.panel.V2XShareEventDescription;
import com.mogo.module.v2x.entity.panel.V2XShareEventItem;
@@ -61,6 +62,7 @@ public class V2XShareEventsFragment extends MvpFragment<V2XShareEventsFragment,
private void initRecyclerView() {
recyclerView = mRootView.findViewById(R.id.road_case_share_list);
recyclerView.addItemDecoration(new SpacesItemDecoration((int) getResources().getDimension(R.dimen.share_item_padding)));
adapter = new V2XShareEventAdapter(getActivity(), dataArrayList, this);
recyclerView.setAdapter(adapter);
LinearLayoutManager linearLayoutManager =
@@ -141,10 +143,11 @@ public class V2XShareEventsFragment extends MvpFragment<V2XShareEventsFragment,
//空白
item.setViewType(V2XShareEventItemEnum.ITEM_TYPE_SHARE_EMPTY);
dataArrayList.add(item);
int len = dataArrayList.size();
} else {
if (dataArrayList.size() > 0) {
Object data = dataArrayList.get(dataArrayList.size() - 1);
if (data instanceof V2XShareEventLoadMoreItem || data instanceof V2XShareEventLoadMoreItem) {
if (data instanceof V2XShareEventLoadMoreItem) {
dataArrayList.remove(dataArrayList.size() - 1);
}
}

View File

@@ -47,11 +47,6 @@ public class V2XShareNetworkModel {
@Override
public void subscribe(ObservableEmitter<String> emitter) throws Exception {
try {
getShareIndex(callback);
} catch (Exception e) {
e.printStackTrace();
}
emitter.onNext("1");
emitter.onComplete();
}
@@ -60,16 +55,10 @@ public class V2XShareNetworkModel {
Observable<String> listObservable = Observable.create(new ObservableOnSubscribe<String>() {
@Override
public void subscribe(ObservableEmitter<String> emitter) throws Exception {
try {
getShareEventList(page, size, callback);
} catch (Exception e) {
e.printStackTrace();
}
emitter.onNext("2");
emitter.onComplete();
}
});
indexObservable.flatMap(new Function<String, ObservableSource<?>>() {
@Override
public ObservableSource<?> apply(String s) throws Exception {
@@ -82,12 +71,20 @@ public class V2XShareNetworkModel {
@Override
public void onSubscribe(Disposable d) {
try {
getShareIndex(callback);
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
public void onNext(Object o) {
try {
getShareEventList(page, size, callback);
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
@@ -135,7 +132,7 @@ public class V2XShareNetworkModel {
@Override
public void onError(Throwable e) {
super.onError(e);
if (callback != null){
if (callback != null) {
callback.onFail("网络异常,点击刷新重试");
}
}
@@ -179,7 +176,7 @@ public class V2XShareNetworkModel {
@Override
public void onError(Throwable e) {
super.onError(e);
if (callback != null){
if (callback != null) {
callback.onFail("网络异常,点击刷新重试");
}
}

View File

@@ -5,32 +5,32 @@ import com.mogo.module.v2x.R;
public class AnimationResources {
public static final int loadingRes[] = {
R.drawable.v_to_x_loading_car0000,
R.drawable.v_to_x_loading_car0002,
R.drawable.v_to_x_loading_car0004,
R.drawable.v_to_x_loading_car0006,
R.drawable.v_to_x_loading_car0008,
R.drawable.v_to_x_loading_car0010,
R.drawable.v_to_x_loading_car0012,
R.drawable.v_to_x_loading_car0014,
R.drawable.v_to_x_loading_car0016,
R.drawable.v_to_x_loading_car0018,
R.drawable.v_to_x_loading_car0020,
R.drawable.v_to_x_loading_car0022,
R.drawable.v_to_x_loading_car0024,
R.drawable.v_to_x_loading_car0025,
R.drawable.v_to_x_loading_car0027,
R.drawable.v_to_x_loading_car0029,
R.drawable.v_to_x_loading_car0031,
R.drawable.v_to_x_loading_car0033,
R.drawable.v_to_x_loading_car0035,
R.drawable.v_to_x_loading_car0037,
R.drawable.v_to_x_loading_car0039,
R.drawable.v_to_x_loading_car0041,
R.drawable.v_to_x_loading_car0043,
R.drawable.v_to_x_loading_car0045,
R.drawable.v_to_x_loading_car0047,
R.drawable.v_to_x_loading_car0048,
// R.drawable.v_to_x_loading_car0000,
// R.drawable.v_to_x_loading_car0002,
// R.drawable.v_to_x_loading_car0004,
// R.drawable.v_to_x_loading_car0006,
// R.drawable.v_to_x_loading_car0008,
// R.drawable.v_to_x_loading_car0010,
// R.drawable.v_to_x_loading_car0012,
// R.drawable.v_to_x_loading_car0014,
// R.drawable.v_to_x_loading_car0016,
// R.drawable.v_to_x_loading_car0018,
// R.drawable.v_to_x_loading_car0020,
// R.drawable.v_to_x_loading_car0022,
// R.drawable.v_to_x_loading_car0024,
// R.drawable.v_to_x_loading_car0025,
// R.drawable.v_to_x_loading_car0027,
// R.drawable.v_to_x_loading_car0029,
// R.drawable.v_to_x_loading_car0031,
// R.drawable.v_to_x_loading_car0033,
// R.drawable.v_to_x_loading_car0035,
// R.drawable.v_to_x_loading_car0037,
// R.drawable.v_to_x_loading_car0039,
// R.drawable.v_to_x_loading_car0041,
// R.drawable.v_to_x_loading_car0043,
// R.drawable.v_to_x_loading_car0045,
// R.drawable.v_to_x_loading_car0047,
// R.drawable.v_to_x_loading_car0048,
};
}

View File

@@ -1,63 +1,71 @@
package com.mogo.module.v2x.utils.animation;
import android.graphics.drawable.AnimationDrawable;
import android.util.Log;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.view.View;
import android.widget.ImageView;
import com.mogo.utils.ThreadPoolService;
import com.mogo.utils.UiThreadHandler;
import android.widget.ProgressBar;
public class V2XAnimationManager implements Animation {
private static final String TAG = "V2XAnimationManager";
private ImageView targetImageView;
private Animation delegate;
private ProgressBar targetImageView;
private boolean isStarted = false;
public void animationWithTarget(ImageView imageView, int[] resources, int duration) {
targetImageView = imageView;
ThreadPoolService.execute(() -> {
final AnimationDrawable drawable = new AnimationDrawable();
for (int i = 0; i < resources.length; i++) {
drawable.setOneShot(false);
drawable.addFrame(targetImageView.getResources().getDrawable(resources[i]), duration);
private int mStartIndex = 0;
private final static int MSG_LOOP = 3004;
private long INTERVAL = 100L;
private Handler mHandler = new Handler(Looper.getMainLooper()) {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case MSG_LOOP:
if (isStarted) {
// targetImageView.setImageResource( AnimationResources.loadingRes[mStartIndex++ % AnimationResources.loadingRes.length] );
mHandler.sendEmptyMessageDelayed(MSG_LOOP, INTERVAL);
}
break;
}
UiThreadHandler.post(() -> {
targetImageView.setBackground(drawable);
delegate = new DelegateDrawable(drawable);
start();
});
});
}
};
public void animationWithTarget(ProgressBar imageView, int[] resources, int duration) {
targetImageView = imageView;
INTERVAL = duration;
start();
}
@Override
synchronized public void start() {
if (delegate != null && !isStarted) {
isStarted = true;
mHandler.sendEmptyMessage(MSG_LOOP);
if (targetImageView != null) {
targetImageView.setVisibility(View.VISIBLE);
isStarted = true;
delegate.start();
}
}
@Override
synchronized public void stop() {
if (delegate != null && isStarted) {
isStarted = false;
delegate.stop();
isStarted = false;
mHandler.removeMessages(MSG_LOOP);
if (targetImageView != null) {
targetImageView.setVisibility(View.INVISIBLE);
}
}
public void soptWithError(){
if (delegate != null && isStarted) {
isStarted = false;
delegate.stop();
public void soptWithError() {
stop();
if (targetImageView != null) {
targetImageView.setVisibility(View.VISIBLE);
}
}
public void release() {
delegate = null;
stop();
}
}

View File

@@ -6,6 +6,7 @@ import android.view.LayoutInflater;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ProgressBar;
import android.widget.RelativeLayout;
import android.widget.TextView;
@@ -17,7 +18,7 @@ import com.mogo.module.v2x.utils.animation.V2XAnimationManager;
public class V2XNetworkLoadingView extends RelativeLayout {
private ImageView loadView;
private ProgressBar loadView;
private TextView textView;
private V2XAnimationManager v2XAnimationManager;
public Button refresButton;
@@ -32,6 +33,9 @@ public class V2XNetworkLoadingView extends RelativeLayout {
super(context, attrs);
LayoutInflater.from(context).inflate(R.layout.v2x_network_loading_item, this);
initView();
/*
添加动画图片资源
* */
setLoadingImage(AnimationResources.loadingRes);
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="@dimen/dp_11"/>
<corners android:radius="@dimen/dp_21"/>
<gradient
android:startColor="#5E6079"
android:endColor="#3F4057"

View File

@@ -2,6 +2,6 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#1F2131"/>
<corners android:radius="12px"/>
<corners android:radius="@dimen/dp_24"/>
</shape>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 144 KiB

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="12px"/>
<corners android:radius="@dimen/dp_28"/>
<gradient
android:angle="270"
android:startColor="@android:color/transparent"

View File

@@ -4,7 +4,7 @@
<shape>
<corners android:radius="@dimen/dp_180" />
<gradient
android:angle="180"
android:angle="0"
android:endColor="#5CC1FF"
android:startColor="#256BFF" />
</shape>
@@ -13,7 +13,7 @@
<shape>
<corners android:radius="@dimen/dp_180" />
<gradient
android:angle="180"
android:angle="0"
android:endColor="#5CC1FF"
android:startColor="#256BFF" />
</shape>

View File

@@ -67,6 +67,7 @@
android:maxLines="1"
android:textColor="@color/v2x_FFF_333"
android:textSize="@dimen/dp_36"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@id/tvEventTypeTitle"
app:layout_constraintTop_toBottomOf="@+id/tvEventTypeTitle"
@@ -100,7 +101,7 @@
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_30"
android:alpha="0.6"
android:textColor="@color/v2x_FFF_666"
android:textColor="@color/v2x_FFF_999"
android:textSize="@dimen/dp_28"
app:layout_constraintBottom_toBottomOf="@id/ivEventDistanceLogo"
app:layout_constraintStart_toEndOf="@+id/tvEventDistance"

View File

@@ -5,7 +5,7 @@
android:id="@+id/rlContent"
android:layout_width="match_parent"
android:layout_height="@dimen/module_v2x_fatigue_driving_window_height_ground"
android:background="@drawable/v2x_alert_window_bg"
android:background="@drawable/bg_v2x_event_list_item"
android:paddingStart="@dimen/dp_40"
android:paddingEnd="@dimen/dp_40">
@@ -31,6 +31,7 @@
android:text="违章停车"
android:textColor="#FFFFFF"
android:textSize="@dimen/dp_24"
android:textStyle="bold"
app:layout_constraintBottom_toTopOf="@+id/tvAddress"
app:layout_constraintStart_toEndOf="@+id/ivIconP"
app:layout_constraintTop_toTopOf="@+id/ivIconP" />
@@ -39,7 +40,7 @@
android:id="@+id/tvAddress"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginTop="@dimen/dp_8"
android:layout_marginRight="@dimen/dp_30"
android:ellipsize="end"
android:maxLines="1"
@@ -55,12 +56,11 @@
android:id="@+id/tvIllegalNum"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginBottom="@dimen/dp_10"
android:alpha="0.6"
android:gravity="center_vertical"
android:textColor="@color/v2x_FFF_666"
android:textSize="@dimen/dp_30"
android:textSize="@dimen/dp_26"
app:layout_constraintEnd_toEndOf="@+id/tvAddress"
app:layout_constraintStart_toStartOf="@+id/tagEventType"
app:layout_constraintTop_toBottomOf="@+id/tvAddress"

View File

@@ -68,6 +68,7 @@
android:maxLines="1"
android:textColor="@color/v2x_FFF_333"
android:textSize="@dimen/dp_34"
android:textStyle="bold"
app:layout_constraintEnd_toStartOf="@+id/llIllegalParkingLike"
app:layout_constraintStart_toEndOf="@+id/ivIconP"
app:layout_constraintTop_toBottomOf="@+id/tagEventType"
@@ -77,12 +78,11 @@
android:id="@+id/tvIllegalNum"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginBottom="@dimen/dp_24"
android:alpha="0.6"
android:gravity="center_vertical"
android:textColor="@color/v2x_FFF_666"
android:textSize="@dimen/dp_30"
android:textSize="@dimen/dp_26"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/tvAddress"
app:layout_constraintStart_toStartOf="@+id/tvAddress"

View File

@@ -72,7 +72,7 @@
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_10"
android:layout_marginEnd="@dimen/dp_30"
android:textColor="@android:color/white"
android:textColor="@color/v2x_FFF_333"
android:textSize="@dimen/dp_33"
android:textStyle="bold"
app:layout_constraintEnd_toStartOf="@+id/tvFaultHelpDistance"
@@ -87,8 +87,8 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:alpha="0.59"
android:textColor="@android:color/white"
android:textSize="@dimen/dp_29"
android:textColor="@color/v2x_FFF_666"
android:textSize="@dimen/dp_26"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginBottom="@dimen/dp_24"
app:layout_constraintStart_toStartOf="@+id/tvFaultHelpName"
@@ -101,7 +101,7 @@
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/dp_30"
android:gravity="center_vertical"
android:textColor="#FFF"
android:textColor="@color/v2x_FFF_333"
android:textSize="@dimen/dp_80"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="@+id/ivFaultHelpEventCall"

View File

@@ -13,7 +13,7 @@
<RadioGroup
android:id="@+id/rgTabSelect"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_154"
android:layout_height="@dimen/dp_125"
android:gravity="center_vertical"
android:orientation="horizontal">
@@ -28,7 +28,7 @@
android:paddingEnd="@dimen/dp_40"
android:text="出行动态"
android:textColor="@color/radiobutton_textcolor"
android:textSize="@dimen/dp_40"
android:textSize="@dimen/dp_36"
android:textStyle="bold" />
<View
@@ -46,7 +46,7 @@
android:paddingEnd="@dimen/dp_40"
android:text="周边事件"
android:textColor="@color/radiobutton_textcolor"
android:textSize="@dimen/dp_40"
android:textSize="@dimen/dp_36"
android:textStyle="bold" />
<View
@@ -64,7 +64,7 @@
android:paddingEnd="@dimen/dp_40"
android:text="我的分享"
android:textColor="@color/radiobutton_textcolor"
android:textSize="@dimen/dp_40"
android:textSize="@dimen/dp_36"
android:textStyle="bold" />
</RadioGroup>

View File

@@ -11,7 +11,7 @@
<TextView
android:id="@+id/share_event_guide_des"
android:layout_width="wrap_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:alpha="0.8"
@@ -19,7 +19,7 @@
android:paddingLeft="20px"
android:paddingTop="10px"
android:text="小窍门:分享路况,点赞其他车主,有助于提高热心指数"
android:textColor="#FFFFFF"
android:textColor="#CCFFFFFF"
android:textSize="@dimen/share_top_text_size">
</TextView>

View File

@@ -40,8 +40,8 @@
android:clickable="true"
android:onClick="shareEventAction"
android:text="去分享"
android:textColor="#FFFFFF"
android:textSize="@dimen/dp_34" />
android:textColor="@color/v2x_FFF_333"
android:textSize="@dimen/dp_32" />
<View
android:id="@+id/center"
@@ -57,7 +57,7 @@
android:background="@drawable/v2xt_dw_common_corner_bkg_light"
android:text="刷新"
android:textColor="#FFFFFF"
android:textSize="@dimen/dp_34" />
android:textSize="@dimen/dp_32" />
</RelativeLayout>

View File

@@ -6,14 +6,14 @@
android:layout_height="wrap_content"
android:layout_marginLeft="20px"
android:layout_marginRight="20px"
android:layout_marginBottom="14px"
android:layout_marginBottom="@dimen/dp_14"
android:background="@drawable/bg_v2x_event_list_item">
<TextView
android:id="@+id/road_case_style"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20px"
android:layout_marginLeft="@dimen/dp_36"
android:layout_marginTop="@dimen/dp_24"
android:background="@drawable/bg_v2x_event_type_read"
android:gravity="center"
@@ -76,11 +76,11 @@
android:layout_toLeftOf="@id/road_case_uselful"
android:ellipsize="end"
android:gravity="left"
android:layout_marginTop="@dimen/dp_24"
android:layout_marginTop="@dimen/dp_12"
android:lines="1"
android:text="东城区北三环附近维多欧美"
android:textColor="@color/v2x_FFF_333"
android:textSize="@dimen/dp_34" />
android:textSize="@dimen/dp_32" />
<TextView
android:id="@+id/road_case_share_time"
@@ -88,11 +88,11 @@
android:layout_height="wrap_content"
android:layout_below="@id/road_case_address"
android:layout_alignLeft="@id/road_case_style"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginTop="@dimen/dp_3"
android:layout_marginBottom="@dimen/dp_24"
android:alpha="0.5"
android:gravity="left"
android:text="时间:"
android:textColor="@color/v2x_FFF_666"
android:textSize="@dimen/dp_30" />
android:textSize="@dimen/share_item_text_size" />
</RelativeLayout>

View File

@@ -7,16 +7,15 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
<ProgressBar
android:id="@+id/loading_imageview"
android:layout_width="@dimen/v2x_loading_ani_width"
android:layout_height="@dimen/v2x_loading_ani_width"
android:layout_width="45dp"
android:layout_height="43dp"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="60px"
android:background="@drawable/v_to_x_loading_car0000"
android:layout_marginTop="@dimen/v2x_panel_loading_top"
android:indeterminateTint="#256BFF"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintVertical_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="parent"
app:layout_constraintTop_toTopOf="parent" />
@@ -29,13 +28,14 @@
android:layout_centerHorizontal="true"
android:layout_gravity="top|center"
android:alpha="0.7"
android:paddingTop="14px"
android:text="正在获取信息…"
android:textColor="#FFFFFF"
android:paddingTop="@dimen/dp_25"
android:textColor="@color/v2x_FFF_666"
android:textSize="@dimen/dp_34"
app:layout_constraintBottom_toBottomOf="@+id/loading_imageview"
app:layout_constraintBottom_toTopOf="@+id/refresh_button"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/loading_imageview" />
<Button
android:id="@+id/refresh_button"
@@ -44,13 +44,13 @@
android:layout_below="@id/loading_text"
android:layout_centerHorizontal="true"
android:layout_gravity="top|center"
android:layout_marginTop="@dimen/shaer_refresh_padding"
android:layout_marginTop="@dimen/dp_40"
android:background="@drawable/v2xt_dw_common_corner_bkg_light"
android:text="刷新"
android:textColor="#FFFFFF"
android:textSize="@dimen/dp_34"
android:textSize="@dimen/dp_32"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/loading_imageview" />
app:layout_constraintTop_toBottomOf="@+id/loading_text" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -60,7 +60,7 @@
<dimen name="module_v2x_panel_width">82px</dimen>
<dimen name="module_v2x_panel_icon_cor">16px</dimen>
<dimen name="share_empty_icon_width">117px</dimen>
<dimen name="v2x_loading_ani_width">200px</dimen>
<dimen name="v2x_loading_ani_width">50px</dimen>
<dimen name="v2x_share_btn_width">150px</dimen>
<dimen name="v2x_share_btn_height">48px</dimen>
<dimen name="v2x_index_rating_top">17px</dimen>
@@ -72,6 +72,7 @@
<dimen name="share_index_bottom_padding">15px</dimen>
<dimen name="share_btn_middle_padding">29px</dimen>
<dimen name="v2x_panel_btn_translationY">-8px</dimen>
<dimen name="v2x_panel_loading_top">120px</dimen>
<dimen name="share_item_text_size">16px</dimen>
<dimen name="share_item_padding">20px</dimen>
</resources>

View File

@@ -58,11 +58,11 @@
<dimen name="module_v2x_panel_icon_cor">30px</dimen>
<dimen name="module_v2x_panel_width">140px</dimen>
<dimen name="share_empty_icon_width">219px</dimen>
<dimen name="v2x_loading_ani_width">400px</dimen>
<dimen name="v2x_loading_ani_width">100px</dimen>
<dimen name="v2x_share_btn_width">281px</dimen>
<dimen name="v2x_share_btn_height">90px</dimen>
<dimen name="v2x_index_rating_top">28px</dimen>
<dimen name="share_top_text_size">30px</dimen>
<dimen name="share_top_text_size">28px</dimen>
<dimen name="share_des_num_size">67.5px</dimen>
<dimen name="share_index_des_size">30px</dimen>
<dimen name="share_empty_btn_padding">40px</dimen>
@@ -71,6 +71,9 @@
<dimen name="share_btn_middle_padding">54px</dimen>
<dimen name="v2x_panel_btn_translationY">-10px</dimen>
<dimen name="v2x_panel_btn_image_width">114px</dimen>
<dimen name="v2x_panel_loading_top">300px</dimen>
<dimen name="share_item_text_size">26px</dimen>
<dimen name="share_item_padding">25px</dimen>
</resources>

View File

@@ -18,5 +18,4 @@
<color name="v2x_000_FFF">#000000</color>
<color name="v2x_FFF_2896FF">#FFF</color>
</resources>

View File

@@ -60,7 +60,7 @@
<dimen name="module_v2x_panel_width">82px</dimen>
<dimen name="module_v2x_panel_icon_cor">16px</dimen>
<dimen name="share_empty_icon_width">117px</dimen>
<dimen name="v2x_loading_ani_width">200px</dimen>
<dimen name="v2x_loading_ani_width">50px</dimen>
<dimen name="v2x_share_btn_width">150px</dimen>
<dimen name="v2x_share_btn_height">48px</dimen>
<dimen name="v2x_index_rating_top">17px</dimen>
@@ -72,7 +72,6 @@
<dimen name="share_index_bottom_padding">15px</dimen>
<dimen name="share_btn_middle_padding">29px</dimen>
<dimen name="v2x_panel_btn_translationY">-8px</dimen>
<dimen name="v2x_panel_loading_top">120px</dimen>
</resources>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="12px"/>
<corners android:radius="@dimen/dp_21"/>
<gradient
android:startColor="#1F7EFF"
android:endColor="#1E57A4"
android:startColor="#B31F7EFF"
android:endColor="#B31E57A4"
android:type="linear"
android:angle="180"/>

View File

@@ -2,6 +2,6 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#DDDDDD"/>
<corners android:radius="12px"/>
<corners android:radius="@dimen/dp_24"/>
</shape>

View File

@@ -4,8 +4,8 @@
<corners android:radius="@dimen/dp_180" />
<gradient
android:angle="135"
android:endColor="#2E324B"
android:startColor="#585E8B"
android:endColor="#DDDDDD"
android:startColor="#E6E6E6"
android:type="linear"
android:useLevel="true" />