opt
This commit is contained in:
2
.idea/misc.xml
generated
2
.idea/misc.xml
generated
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="JDK" project-jdk-type="JavaSDK">
|
||||||
<output url="file://$PROJECT_DIR$/build/classes" />
|
<output url="file://$PROJECT_DIR$/build/classes" />
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
||||||
@@ -45,6 +45,7 @@ dependencies {
|
|||||||
annotationProcessor rootProject.ext.dependencies.aroutercompiler
|
annotationProcessor rootProject.ext.dependencies.aroutercompiler
|
||||||
implementation rootProject.ext.dependencies.rxjava
|
implementation rootProject.ext.dependencies.rxjava
|
||||||
implementation rootProject.ext.dependencies.rxandroid
|
implementation rootProject.ext.dependencies.rxandroid
|
||||||
|
implementation rootProject.ext.dependencies.carcallprovider
|
||||||
|
|
||||||
if (Boolean.valueOf(RELEASE)) {
|
if (Boolean.valueOf(RELEASE)) {
|
||||||
api rootProject.ext.dependencies.mogomap
|
api rootProject.ext.dependencies.mogomap
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import com.mogo.map.location.IMogoLocationClient;
|
|||||||
import com.mogo.map.marker.IMogoMarkerManager;
|
import com.mogo.map.marker.IMogoMarkerManager;
|
||||||
import com.mogo.map.navi.IMogoNavi;
|
import com.mogo.map.navi.IMogoNavi;
|
||||||
import com.mogo.map.uicontroller.IMogoMapUIController;
|
import com.mogo.map.uicontroller.IMogoMapUIController;
|
||||||
|
import com.mogo.module.carchattingprovider.ICarsChattingProvider;
|
||||||
import com.mogo.module.common.entity.MarkerResponse;
|
import com.mogo.module.common.entity.MarkerResponse;
|
||||||
import com.mogo.module.common.entity.MarkerShowEntity;
|
import com.mogo.module.common.entity.MarkerShowEntity;
|
||||||
import com.mogo.module.service.marker.MapMarkerManager;
|
import com.mogo.module.service.marker.MapMarkerManager;
|
||||||
@@ -25,6 +26,7 @@ import com.mogo.service.map.IMogoMapService;
|
|||||||
import com.mogo.service.module.IMogoActionManager;
|
import com.mogo.service.module.IMogoActionManager;
|
||||||
import com.mogo.service.module.IMogoRegisterCenter;
|
import com.mogo.service.module.IMogoRegisterCenter;
|
||||||
import com.mogo.service.statusmanager.IMogoStatusManager;
|
import com.mogo.service.statusmanager.IMogoStatusManager;
|
||||||
|
import com.zhidao.carchattingprovider.CallChattingProviderConstant;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* author : donghongyu
|
* author : donghongyu
|
||||||
@@ -36,128 +38,136 @@ import com.mogo.service.statusmanager.IMogoStatusManager;
|
|||||||
public class MarkerServiceHandler {
|
public class MarkerServiceHandler {
|
||||||
private static final String TAG = "MarkerServiceHandler";
|
private static final String TAG = "MarkerServiceHandler";
|
||||||
|
|
||||||
private static IMogoServiceApis mApis;
|
private static IMogoServiceApis sApis;
|
||||||
|
|
||||||
private static IMogoMapService mMapService;
|
private static IMogoMapService sMapService;
|
||||||
private static IMogoMarkerManager mMarkerManager;
|
private static IMogoMarkerManager sMarkerManager;
|
||||||
private static IMogoNavi mNavi;
|
private static IMogoNavi sNavi;
|
||||||
private static IMogoMapUIController mMapUIController;
|
private static IMogoMapUIController sMapUIController;
|
||||||
private static IMogoLocationClient mLocationClient;
|
private static IMogoLocationClient sLocationClient;
|
||||||
private static IMogoStatusManager mMogoStatusManager;
|
private static IMogoStatusManager sMogoStatusManager;
|
||||||
private static IMogoImageloader mImageloader;
|
private static IMogoImageloader sImageloader;
|
||||||
private static IMogoSocketManager mMogoSocketManager;
|
private static IMogoSocketManager sMogoSocketManager;
|
||||||
private static IMogoCardManager mMogoCardManager;
|
private static IMogoCardManager sMogoCardManager;
|
||||||
private static IMogoAnalytics mMogoAnalytics;
|
private static IMogoAnalytics sMogoAnalytics;
|
||||||
private static IMogoRegisterCenter mRegisterCenter;
|
private static IMogoRegisterCenter sRegisterCenter;
|
||||||
private static IMogoActionManager mActionManager;
|
private static IMogoActionManager sActionManager;
|
||||||
private static IMogoDataManager mDataManager;
|
private static IMogoDataManager sDataManager;
|
||||||
private static IMogoIntentManager mIntentManager;
|
private static IMogoIntentManager sIntentManager;
|
||||||
private static IMogoADASController mADASController;
|
private static IMogoADASController sADASController;
|
||||||
private static IMogoLauncher mLauncher;
|
private static IMogoLauncher sLauncher;
|
||||||
private static IMogoFragmentManager mFragmentManager;
|
private static IMogoFragmentManager sFragmentManager;
|
||||||
|
private static ICarsChattingProvider sCarChatting;
|
||||||
|
|
||||||
private static MapMarkerManager mMapMarkerManager;
|
private static MapMarkerManager sMapMarkerManager;
|
||||||
|
|
||||||
public static void init( final Context context ) {
|
public static void init( final Context context ) {
|
||||||
mApis = ( IMogoServiceApis ) ARouter.getInstance().build( MogoServicePaths.PATH_SERVICE_APIS ).navigation( context );
|
sApis = ( IMogoServiceApis ) ARouter.getInstance().build( MogoServicePaths.PATH_SERVICE_APIS ).navigation( context );
|
||||||
mMapService = mApis.getMapServiceApi();
|
sMapService = sApis.getMapServiceApi();
|
||||||
mImageloader = mApis.getImageLoaderApi();
|
sImageloader = sApis.getImageLoaderApi();
|
||||||
mMogoStatusManager = mApis.getStatusManagerApi();
|
sMogoStatusManager = sApis.getStatusManagerApi();
|
||||||
mMogoSocketManager = mApis.getSocketManagerApi( context );
|
sMogoSocketManager = sApis.getSocketManagerApi( context );
|
||||||
mMogoCardManager = mApis.getCardManagerApi();
|
sMogoCardManager = sApis.getCardManagerApi();
|
||||||
mMogoAnalytics = mApis.getAnalyticsApi();
|
sMogoAnalytics = sApis.getAnalyticsApi();
|
||||||
mMarkerManager = mMapService.getMarkerManager( context );
|
sMarkerManager = sMapService.getMarkerManager( context );
|
||||||
mNavi = mMapService.getNavi( context );
|
sNavi = sMapService.getNavi( context );
|
||||||
mMapUIController = mMapService.getMapUIController();
|
sMapUIController = sMapService.getMapUIController();
|
||||||
mLocationClient = mMapService.getSingletonLocationClient( context );
|
sLocationClient = sMapService.getSingletonLocationClient( context );
|
||||||
mRegisterCenter = mApis.getRegisterCenterApi();
|
sRegisterCenter = sApis.getRegisterCenterApi();
|
||||||
mActionManager = mApis.getActionManagerApi();
|
sActionManager = sApis.getActionManagerApi();
|
||||||
mDataManager = mApis.getDataManagerApi();
|
sDataManager = sApis.getDataManagerApi();
|
||||||
mIntentManager = mApis.getIntentManagerApi();
|
sIntentManager = sApis.getIntentManagerApi();
|
||||||
mADASController = mApis.getAdasControllerApi();
|
sADASController = sApis.getAdasControllerApi();
|
||||||
mLauncher = mApis.getLauncherApi();
|
sLauncher = sApis.getLauncherApi();
|
||||||
mFragmentManager = mApis.getFragmentManagerApi();
|
sFragmentManager = sApis.getFragmentManagerApi();
|
||||||
|
|
||||||
mMapMarkerManager = MapMarkerManager.getInstance();
|
sCarChatting = (ICarsChattingProvider)ARouter.getInstance().build( CallChattingProviderConstant.CAR_CALL_PROVIDER ).navigation( context );
|
||||||
mMapMarkerManager.init( context );
|
|
||||||
|
sMapMarkerManager = MapMarkerManager.getInstance();
|
||||||
|
sMapMarkerManager.init( context );
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoServiceApis getApis(){
|
public static IMogoServiceApis getApis(){
|
||||||
return mApis;
|
return sApis;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoMapService getMapService() {
|
public static IMogoMapService getMapService() {
|
||||||
return mMapService;
|
return sMapService;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoMarkerManager getMarkerManager() {
|
public static IMogoMarkerManager getMarkerManager() {
|
||||||
return mMarkerManager;
|
return sMarkerManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoNavi getNavi() {
|
public static IMogoNavi getNavi() {
|
||||||
return mNavi;
|
return sNavi;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoMapUIController getMapUIController() {
|
public static IMogoMapUIController getMapUIController() {
|
||||||
return mMapUIController;
|
return sMapUIController;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoImageloader getImageloader() {
|
public static IMogoImageloader getImageloader() {
|
||||||
return mImageloader;
|
return sImageloader;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoSocketManager getMogoSocketManager() {
|
public static IMogoSocketManager getMogoSocketManager() {
|
||||||
return mMogoSocketManager;
|
return sMogoSocketManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoStatusManager getMogoStatusManager() {
|
public static IMogoStatusManager getMogoStatusManager() {
|
||||||
return mMogoStatusManager;
|
return sMogoStatusManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoCardManager getMogoCardManager() {
|
public static IMogoCardManager getMogoCardManager() {
|
||||||
return mMogoCardManager;
|
return sMogoCardManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoAnalytics getMogoAnalytics() {
|
public static IMogoAnalytics getMogoAnalytics() {
|
||||||
return mMogoAnalytics;
|
return sMogoAnalytics;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoLocationClient getMogoLocationClient() {
|
public static IMogoLocationClient getMogoLocationClient() {
|
||||||
return mLocationClient;
|
return sLocationClient;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static MapMarkerManager getMapMarkerManager() {
|
public static MapMarkerManager getMapMarkerManager() {
|
||||||
return mMapMarkerManager;
|
return sMapMarkerManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoRegisterCenter getRegisterCenter() {
|
public static IMogoRegisterCenter getRegisterCenter() {
|
||||||
return mRegisterCenter;
|
return sRegisterCenter;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoActionManager getActionManager() {
|
public static IMogoActionManager getActionManager() {
|
||||||
return mActionManager;
|
return sActionManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoIntentManager getIntentManager() {
|
public static IMogoIntentManager getIntentManager() {
|
||||||
return mIntentManager;
|
return sIntentManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoADASController getADASController() {
|
public static IMogoADASController getADASController() {
|
||||||
return mADASController;
|
return sADASController;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoLauncher getLauncher() {
|
public static IMogoLauncher getLauncher() {
|
||||||
return mLauncher;
|
return sLauncher;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoFragmentManager getFragmentManager() {
|
public static IMogoFragmentManager getFragmentManager() {
|
||||||
return mFragmentManager;
|
return sFragmentManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IMogoDataManager getDataManager() {
|
public static IMogoDataManager getDataManager() {
|
||||||
return mDataManager;
|
return sDataManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static ICarsChattingProvider getCarChatting() {
|
||||||
|
return sCarChatting;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//TODO -------------以下方法是临时过度使用的,后面统一使用,getMapMarkerManager进行调用
|
//TODO -------------以下方法是临时过度使用的,后面统一使用,getMapMarkerManager进行调用
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -827,12 +827,14 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
|
|||||||
};
|
};
|
||||||
|
|
||||||
private void getOnlineCarList() {
|
private void getOnlineCarList() {
|
||||||
if (mCurrentModuleName.equals(ServiceConst.CARD_TYPE_BUSINESS_OPERATION )
|
|
||||||
|| mCurrentModuleName.equals(ServiceConst.CARD_TYPE_USER_DATA) ) {
|
|
||||||
|
|
||||||
if (MarkerServiceHandler.getMogoStatusManager().isSearchUIShow() || MarkerServiceHandler.getMogoStatusManager().isADASShow()){
|
if (MarkerServiceHandler.getMogoStatusManager().isSearchUIShow() || MarkerServiceHandler.getMogoStatusManager().isADASShow()){
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ( TextUtils.equals( ServiceConst.CARD_TYPE_USER_DATA, mCurrentModuleName )
|
||||||
|
|| TextUtils.equals( ServiceConst.CARD_TYPE_BUSINESS_OPERATION, mCurrentModuleName )
|
||||||
|
|| TextUtils.equals( ServiceConst.CARD_TYPE_CARS_CHATTING, mCurrentModuleName )) {
|
||||||
|
|
||||||
mRefreshModel.queryOnLineCarWithRoute(mCarLatLng, false, false, new RefreshCallback() {
|
mRefreshModel.queryOnLineCarWithRoute(mCarLatLng, false, false, new RefreshCallback() {
|
||||||
@Override
|
@Override
|
||||||
@@ -845,7 +847,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
|
|||||||
removeCarMarkers();
|
removeCarMarkers();
|
||||||
List<MarkerOnlineCar> onlineCarList = result.getOnlineCar();
|
List<MarkerOnlineCar> onlineCarList = result.getOnlineCar();
|
||||||
dispatchDataToBis(ServiceConst.CARD_TYPE_USER_DATA, onlineCarList == null ? new ArrayList<>() : onlineCarList);
|
dispatchDataToBis(ServiceConst.CARD_TYPE_USER_DATA, onlineCarList == null ? new ArrayList<>() : onlineCarList);
|
||||||
drawOnlineCarMarkers(onlineCarList, ServiceConst.MAX_AMOUNT_SINGLE_CARD);
|
drawOnlineCarMarkers( onlineCarList, ServiceConst.MAX_AMOUNT_SINGLE_CARD );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -1,23 +1,29 @@
|
|||||||
package com.mogo.module.service.marker;
|
package com.mogo.module.service.marker;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.Bitmap;
|
|
||||||
import android.os.Looper;
|
import android.os.Looper;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
import android.widget.ImageView;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import com.mogo.map.marker.IMogoInfoWindowAdapter;
|
import com.mogo.map.marker.IMogoInfoWindowAdapter;
|
||||||
import com.mogo.map.marker.IMogoMarker;
|
import com.mogo.map.marker.IMogoMarker;
|
||||||
|
import com.mogo.module.common.entity.MarkerLocation;
|
||||||
|
import com.mogo.module.common.entity.MarkerOnlineCar;
|
||||||
import com.mogo.module.common.entity.MarkerShowEntity;
|
import com.mogo.module.common.entity.MarkerShowEntity;
|
||||||
|
import com.mogo.module.common.entity.MarkerUserInfo;
|
||||||
import com.mogo.module.service.MarkerServiceHandler;
|
import com.mogo.module.service.MarkerServiceHandler;
|
||||||
import com.mogo.module.service.R;
|
import com.mogo.module.service.R;
|
||||||
import com.mogo.service.imageloader.IMogoImageLoaderListener;
|
|
||||||
import com.mogo.service.imageloader.MogoImageView;
|
import com.mogo.service.imageloader.MogoImageView;
|
||||||
import com.mogo.utils.UiThreadHandler;
|
import com.mogo.utils.UiThreadHandler;
|
||||||
import com.mogo.utils.WindowUtils;
|
import com.mogo.utils.WindowUtils;
|
||||||
import com.mogo.utils.logger.Logger;
|
import com.mogo.utils.logger.Logger;
|
||||||
|
import com.zhidao.carchattingprovider.CallChattingProviderConstant;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author congtaowang
|
* @author congtaowang
|
||||||
@@ -36,6 +42,8 @@ public class UserDataMarkerInfoWindowAdapter implements IMogoInfoWindowAdapter {
|
|||||||
|
|
||||||
private MogoImageView mUserHeader;
|
private MogoImageView mUserHeader;
|
||||||
private TextView mContent;
|
private TextView mContent;
|
||||||
|
private TextView mTag;
|
||||||
|
private ImageView mCall;
|
||||||
|
|
||||||
private UserDataMarkerInfoWindowAdapter( Context context ) {
|
private UserDataMarkerInfoWindowAdapter( Context context ) {
|
||||||
this.mContext = context;
|
this.mContext = context;
|
||||||
@@ -70,12 +78,42 @@ public class UserDataMarkerInfoWindowAdapter implements IMogoInfoWindowAdapter {
|
|||||||
mInfoWindowView = LayoutInflater.from( mContext ).inflate( R.layout.view_map_data_user_info_window, null );
|
mInfoWindowView = LayoutInflater.from( mContext ).inflate( R.layout.view_map_data_user_info_window, null );
|
||||||
mUserHeader = mInfoWindowView.findViewById( R.id.module_service_id_user_header );
|
mUserHeader = mInfoWindowView.findViewById( R.id.module_service_id_user_header );
|
||||||
mContent = mInfoWindowView.findViewById( R.id.module_service_id_content );
|
mContent = mInfoWindowView.findViewById( R.id.module_service_id_content );
|
||||||
|
mTag = mInfoWindowView.findViewById( R.id.module_service_id_tag );
|
||||||
|
mCall = mInfoWindowView.findViewById( R.id.module_service_id_call );
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
MarkerShowEntity markerShowEntity = ( MarkerShowEntity ) marker.getObject();
|
MarkerShowEntity markerShowEntity = ( MarkerShowEntity ) marker.getObject();
|
||||||
mContent.setText( markerShowEntity.getTextContent() );
|
mContent.setText( markerShowEntity.getTextContent() );
|
||||||
loadImageWithMarker( markerShowEntity );
|
loadImageHeader( markerShowEntity );
|
||||||
|
if ( markerShowEntity.getBindObj() instanceof MarkerOnlineCar ) {
|
||||||
|
try {
|
||||||
|
mTag.setText( ( ( MarkerOnlineCar ) markerShowEntity.getBindObj() ).getUserInfo().getSafeLabel() );
|
||||||
|
} catch ( Exception e ) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
mCall.setOnClickListener( view -> {
|
||||||
|
if ( markerShowEntity.getBindObj() instanceof MarkerOnlineCar ) {
|
||||||
|
Map< String, String > params = new HashMap<>();
|
||||||
|
MarkerUserInfo userInfo = ( ( MarkerOnlineCar ) markerShowEntity.getBindObj() ).getUserInfo();
|
||||||
|
if ( userInfo != null ) {
|
||||||
|
params.put( CallChattingProviderConstant.CCPROVIDER_SN, userInfo.getSn() );
|
||||||
|
params.put( CallChattingProviderConstant.CCPROVIDER_USER_IMG, userInfo.getUserHead() );
|
||||||
|
params.put( CallChattingProviderConstant.CCPROVIDER_USER_AGE, userInfo.getAgeNumber() + "" );
|
||||||
|
params.put( CallChattingProviderConstant.CCPROVIDER_NICK_NAME, userInfo.getUserName() );
|
||||||
|
params.put( CallChattingProviderConstant.CCPROVIDER_USER_SEX, userInfo.getGender() + "" );
|
||||||
|
}
|
||||||
|
MarkerLocation location = ( ( MarkerOnlineCar ) markerShowEntity.getBindObj() ).getLocation();
|
||||||
|
if ( location != null ) {
|
||||||
|
params.put( CallChattingProviderConstant.CCPROVIDER_ADDRESS, location.getAddress() );
|
||||||
|
params.put( CallChattingProviderConstant.CCPROVIDER_LAT, location.getLat() + "" );
|
||||||
|
params.put( CallChattingProviderConstant.CCPROVIDER_LON, location.getLon() + "" );
|
||||||
|
}
|
||||||
|
Logger.d( TAG, "call parameters: %s", params );
|
||||||
|
MarkerServiceHandler.getCarChatting().call( params );
|
||||||
|
}
|
||||||
|
} );
|
||||||
} catch ( Exception e ) {
|
} catch ( Exception e ) {
|
||||||
Logger.e( TAG, e, "error." );
|
Logger.e( TAG, e, "error." );
|
||||||
}
|
}
|
||||||
@@ -83,7 +121,7 @@ public class UserDataMarkerInfoWindowAdapter implements IMogoInfoWindowAdapter {
|
|||||||
return mInfoWindowView;
|
return mInfoWindowView;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void loadImageWithMarker( final MarkerShowEntity markerShowEntity ) {
|
protected void loadImageHeader( final MarkerShowEntity markerShowEntity ) {
|
||||||
|
|
||||||
if ( Looper.myLooper() != Looper.getMainLooper() ) {
|
if ( Looper.myLooper() != Looper.getMainLooper() ) {
|
||||||
UiThreadHandler.post( () -> {
|
UiThreadHandler.post( () -> {
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
android:id="@+id/module_service_id_marker_content"
|
android:id="@+id/module_service_id_marker_content"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="@dimen/dp_90"
|
android:layout_height="@dimen/dp_90"
|
||||||
android:background="@drawable/bg_map_marker_blue_info"
|
android:background="@drawable/module_services_driver_blue_info"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent">
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
@@ -38,15 +38,38 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginLeft="@dimen/dp_10"
|
android:layout_marginLeft="@dimen/dp_10"
|
||||||
android:ellipsize="end"
|
android:ellipsize="end"
|
||||||
android:gravity="center"
|
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
|
android:minWidth="@dimen/dp_100"
|
||||||
android:textColor="#ffffff"
|
android:textColor="#ffffff"
|
||||||
android:textSize="@dimen/sp_32"
|
android:textSize="@dimen/sp_32"
|
||||||
app:layout_constraintBottom_toBottomOf="@+id/module_service_id_user_header"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toEndOf="@+id/module_service_id_user_header"
|
app:layout_constraintStart_toEndOf="@+id/module_service_id_user_header"
|
||||||
app:layout_constraintTop_toTopOf="@+id/module_service_id_user_header"
|
app:layout_constraintTop_toTopOf="@+id/module_service_id_user_header"
|
||||||
tools:text="诗一样的女子" />
|
app:layout_goneMarginRight="@dimen/dp_30"
|
||||||
|
tools:text="诗" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/module_service_id_tag"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@drawable/module_services_driver_type_blue_info"
|
||||||
|
android:textColor="#ffffff"
|
||||||
|
android:textSize="@dimen/sp_20"
|
||||||
|
app:layout_constraintStart_toStartOf="@+id/module_service_id_content"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/module_service_id_content"
|
||||||
|
tools:text="老司机" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/module_service_id_call"
|
||||||
|
android:layout_width="@dimen/dp_85"
|
||||||
|
android:layout_height="@dimen/dp_85"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:layout_marginLeft="@dimen/dp_10"
|
||||||
|
android:scaleType="fitXY"
|
||||||
|
android:src="@drawable/module_service_ic_call"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@+id/module_service_id_content"
|
||||||
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
@@ -62,7 +85,7 @@
|
|||||||
<ImageView
|
<ImageView
|
||||||
android:layout_width="20dp"
|
android:layout_width="20dp"
|
||||||
android:layout_height="20dp"
|
android:layout_height="20dp"
|
||||||
android:src="@drawable/bg_shape_reverse_triangle_blue" />
|
android:src="@drawable/bg_shape_reverse_triangle_grey" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
Reference in New Issue
Block a user