[Taxi Passenger v1.1.0]乘客端V2X预警时间呈现、隐藏监控icon
This commit is contained in:
@@ -39,6 +39,7 @@ public class TaxiPassengerBaseFragment extends MvpFragment<TaxiPassengerBaseFrag
|
||||
private ImageView mAutopilotImage;
|
||||
private ImageView mMapswitchBtn;
|
||||
private TaxiPassengerTrafficLightView mTrafficLightView;
|
||||
private TaxiPassengerV2XNotificationView mV2XNotificationView;
|
||||
|
||||
protected TaxiPassengerServingOrderFragment ochServingOrderFragment = null;
|
||||
|
||||
@@ -64,6 +65,8 @@ public class TaxiPassengerBaseFragment extends MvpFragment<TaxiPassengerBaseFrag
|
||||
|
||||
mTrafficLightView = findViewById(R.id.traffic_light_view);
|
||||
CallerHmiManager.INSTANCE.setProxyTrafficLightView(mTrafficLightView);
|
||||
mV2XNotificationView = new TaxiPassengerV2XNotificationView(getContext());
|
||||
CallerHmiManager.INSTANCE.setProxyNotificationView(mV2XNotificationView);
|
||||
|
||||
mMapswitchBtn = findViewById(R.id.module_och_taxi_swich_map_iv);
|
||||
mMapswitchBtn.setOnClickListener(new View.OnClickListener() {
|
||||
|
||||
@@ -0,0 +1,90 @@
|
||||
package com.mogo.och.taxi.passenger.ui;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.Gravity;
|
||||
import android.view.LayoutInflater;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.mogo.eagle.core.data.enums.SidePattern;
|
||||
import com.mogo.eagle.core.function.api.hmi.view.IViewNotification;
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler;
|
||||
import com.mogo.och.taxi.passenger.R;
|
||||
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* V2X预警事件view:通过FloatWindow呈现,无需加入到自定义layout中
|
||||
*
|
||||
* Created on 2022/3/16
|
||||
*/
|
||||
public class TaxiPassengerV2XNotificationView extends IViewNotification {
|
||||
|
||||
private ImageView mV2XNotificationIcon;
|
||||
private TextView mV2XNotificationText;
|
||||
|
||||
public TaxiPassengerV2XNotificationView(@Nullable Context context) {
|
||||
this(context, null, 0);
|
||||
}
|
||||
|
||||
public TaxiPassengerV2XNotificationView(@Nullable Context context, @Nullable AttributeSet attrs) {
|
||||
this(context, attrs, 0);
|
||||
}
|
||||
|
||||
public TaxiPassengerV2XNotificationView(@Nullable Context context, @Nullable AttributeSet attrs,
|
||||
int defStyleAttr) {
|
||||
super(context, attrs, defStyleAttr);
|
||||
init(context);
|
||||
}
|
||||
|
||||
private void init(Context context) {
|
||||
LayoutInflater.from(context).inflate(R.layout.taxi_p_v2x_notification_view, this,
|
||||
true);
|
||||
|
||||
mV2XNotificationIcon = findViewById(R.id.taxi_p_v2x_notification_icon_iv);
|
||||
mV2XNotificationText = findViewById(R.id.taxi_p_v2x_notification_text_tv);
|
||||
|
||||
// 设置View的出场位置
|
||||
setSidePattern(SidePattern.LEFT);
|
||||
setLayoutGravity(Gravity.LEFT);
|
||||
// 设置View的停留位置:相对屏幕左上角的位置
|
||||
setOffsetX(getResources().
|
||||
getDimensionPixelSize(R.dimen.taxi_p_v2x_notification_view_margin_left));
|
||||
setOffsetY(getResources().
|
||||
getDimensionPixelSize(R.dimen.taxi_p_v2x_notification_view_margin_top));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setWarningIcon(int warningIcon) {
|
||||
super.setWarningIcon(warningIcon);
|
||||
UiThreadHandler.post(() -> {
|
||||
mV2XNotificationIcon.setImageResource(warningIcon);
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setWarningIcon(@Nullable Drawable drawable) {
|
||||
super.setWarningIcon(drawable);
|
||||
UiThreadHandler.post(() -> {
|
||||
mV2XNotificationIcon.setImageDrawable(drawable);
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setWarningContent(@Nullable CharSequence warningContent) {
|
||||
super.setWarningContent(warningContent);
|
||||
UiThreadHandler.post(() -> {
|
||||
mV2XNotificationText.setText(warningContent);
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setWarningContent(int warningContentId) {
|
||||
super.setWarningContent(warningContentId);
|
||||
UiThreadHandler.post(() -> {
|
||||
mV2XNotificationText.setText(warningContentId);
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
|
||||
<solid android:color="@color/taxi_p_v2x_notification_bg_color"/>
|
||||
<corners android:radius="@dimen/taxi_p_v2x_notification_bg_corner"/>
|
||||
</shape>
|
||||
@@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="@dimen/taxi_p_v2x_notification_view_padding"
|
||||
android:background="@drawable/bg_taxi_p_v2x_notification_view">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/taxi_p_v2x_notification_icon_iv"
|
||||
android:layout_width="@dimen/taxi_p_v2x_notification_icon_size"
|
||||
android:layout_height="@dimen/taxi_p_v2x_notification_icon_size"
|
||||
android:src="@drawable/icon_warning_v2x_abnormal_vehicle"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/taxi_p_v2x_notification_text_tv"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/taxi_p_v2x_notification_text_margin_left"
|
||||
android:text="预警信息"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="@dimen/taxi_p_v2x_notification_text_size"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/taxi_p_v2x_notification_icon_iv"
|
||||
app:layout_constraintLeft_toRightOf="@+id/taxi_p_v2x_notification_icon_iv"
|
||||
app:layout_constraintTop_toTopOf="@+id/taxi_p_v2x_notification_icon_iv"
|
||||
tools:text="前车碰撞预警" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -39,4 +39,12 @@
|
||||
<dimen name="taxi_p_traffic_light_icon_size">154px</dimen>
|
||||
<dimen name="taxi_p_traffic_light_time_view_width">127px</dimen>
|
||||
<dimen name="taxi_p_traffic_light_time_size">60px</dimen>
|
||||
|
||||
<dimen name="taxi_p_v2x_notification_view_margin_left">31px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_view_margin_top">110px</dimen> <!-- 距离Pad顶部 -->
|
||||
<dimen name="taxi_p_v2x_notification_view_padding">10px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_bg_corner">70px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_icon_size">120px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_text_size">39px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_text_margin_left">20px</dimen>
|
||||
</resources>
|
||||
@@ -102,4 +102,12 @@
|
||||
<dimen name="taxi_p_traffic_light_icon_size">154px</dimen>
|
||||
<dimen name="taxi_p_traffic_light_time_view_width">127px</dimen>
|
||||
<dimen name="taxi_p_traffic_light_time_size">60px</dimen>
|
||||
|
||||
<dimen name="taxi_p_v2x_notification_view_margin_left">31px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_view_margin_top">110px</dimen> <!-- 距离Pad顶部 -->
|
||||
<dimen name="taxi_p_v2x_notification_view_padding">10px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_bg_corner">70px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_icon_size">120px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_text_size">39px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_text_margin_left">20px</dimen>
|
||||
</resources>
|
||||
@@ -23,4 +23,6 @@
|
||||
<color name="taxi_p_traffic_light_green_color_down">#006D43</color>
|
||||
<color name="taxi_p_traffic_light_yellow_color_up">#FFE198</color>
|
||||
<color name="taxi_p_traffic_light_yellow_color_down">#FF9B00</color>
|
||||
|
||||
<color name="taxi_p_v2x_notification_bg_color">#80000000</color>
|
||||
</resources>
|
||||
@@ -100,4 +100,12 @@
|
||||
<dimen name="taxi_p_traffic_light_icon_size">154px</dimen>
|
||||
<dimen name="taxi_p_traffic_light_time_view_width">127px</dimen>
|
||||
<dimen name="taxi_p_traffic_light_time_size">60px</dimen>
|
||||
|
||||
<dimen name="taxi_p_v2x_notification_view_margin_left">31px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_view_margin_top">110px</dimen> <!-- 距离Pad顶部 -->
|
||||
<dimen name="taxi_p_v2x_notification_view_padding">10px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_bg_corner">70px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_icon_size">120px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_text_size">39px</dimen>
|
||||
<dimen name="taxi_p_v2x_notification_text_margin_left">20px</dimen>
|
||||
</resources>
|
||||
@@ -112,6 +112,8 @@ public class MogoApplication extends MainMoGoApplication {
|
||||
HmiBuildConfig.isShowLimitingVelocityView = false;
|
||||
//是否显示 红绿等
|
||||
HmiBuildConfig.isShowTrafficLightView = false;
|
||||
//是否显示 路侧监控
|
||||
HmiBuildConfig.isShowCameraView = false;
|
||||
}
|
||||
//och模块
|
||||
MogoModulePaths.addModuleFunction(new MogoModule("/och/api", "IMoGoFunctionProvider"));
|
||||
|
||||
Reference in New Issue
Block a user