HarmonyOS 无法显示自己的位置图标
打开页面时,可以定位到当前的位置,但是不显示我的位置标志图片。
代码如下:
import { MapComponent, mapCommon, map } from '@kit.MapKit';
import { AsyncCallback, BusinessError } from '@ohos.base';
import { getLocation } from '../../../utils/LocationUtils';
import { LogUtils } from '../../../utils/LogUtils';
import statusBarUtils from '../../../utils/StatusBarUtils';
import showToast from '../../../utils/ToastUtils';
import { CommonTopBar } from '../../../views/CommonTopBar';
@Entry
@Component
struct SelectLocationMapPage {
  private TAG = "SelectLocationMapPage";
  @State mapOption: mapCommon.MapOptions | null = null;
  private callback?: AsyncCallback<map.MapComponentController>;
  private mapController?: map.MapComponentController;
  private myLocationButtonClick: Callback<void> = () => {
  }
  onPageShow(): void {
    statusBarUtils.setStatusBarContentColor()
  }
  aboutToAppear(): void {
    getLocation(getContext(this)).then(res => {
      this.mapOption = {
        position: {
          target: {
            latitude: res.latitude,
            longitude: res.longitude
          },
          zoom: 15
        },
        myLocationControlsEnabled: true,
        tiltGesturesEnabled: true
      };
    }).catch((error: BusinessError) => {
      showToast(error.message)
    })
    // 地图初始化的回调
    this.callback = async (err, mapController) => {
      LogUtils.info(this.TAG, err?.message);
      if (!err) {
        this.mapController = mapController;
        this.onMapInit(mapController)
      }
    };
  }
  private async onMapInit(mapController: map.MapComponentController) {
    // 获取地图的控制器类,用来操作地图
    mapController.on("mapLoad", () => {
      LogUtils.info(this.TAG, `on-mapLoad`);
    });
    mapController.on("myLocationButtonClick", this.myLocationButtonClick);
    let style: mapCommon.MyLocationStyle = {
      anchorU: 0.5,
      anchorV: 1,
      icon: $r('app.media.ic_my_location'),
      displayType: mapCommon.MyLocationDisplayType.FOLLOW
    }
    await mapController.setMyLocationStyle(style)
  }
  aboutToDisappear(): void {
    this.mapController?.off("myLocationButtonClick", this.myLocationButtonClick);
  }
  build() {
    Column() {
      CommonTopBar()
      if (this.mapOption) {
        MapComponent({ mapOptions: this.mapOption, mapCallback: this.callback })
          .width('100%')
          .height(0)
          .layoutWeight(1)
      }
    }.width("100%")
    .height("100%")
  }
}
        HarmonyOS
      
        赞
        
 收藏 0
 回答 1
 
        待解决
        
相关问题
 HarmonyOS 地图控件为什么不显示自己位置的蓝色图标 
1201浏览  • 1回复 待解决
HarmonyOS 地图我的位置定位图标显示问题 
1323浏览  • 1回复 待解决
HarmonyOS startWindowIcon属性中的图标无法全屏显示 
1442浏览  • 1回复 待解决
鸿蒙应用的闪屏页面的那个图标怎么换成我们自己的图标? 
16浏览  • 0回复 待解决
HarmonyOS 应用图标不显示 
1454浏览  • 1回复 待解决
HarmonyOS shortcuts图标显示异常 
683浏览  • 1回复 待解决
为什么许多应用长按图标显示的快捷菜单(shortcut)图标显示不全? 
4094浏览  • 0回复 待解决
refresh组件的刷新loading图标是否支持固定位置? 
1750浏览  • 1回复 待解决
Refresh组件的刷新loading图标是否支持固定位置 
2759浏览  • 1回复 待解决
refresh组件的刷新loading图标是否支持固定位置? 
1285浏览  • 1回复 待解决
HarmonyOS 在有键盘的页面,Toast显示位置错误 
1340浏览  • 1回复 待解决
HarmonyOS 地图上不显示‘我的位置’图钉 
1573浏览  • 1回复 待解决
HarmonyOS 用自己的签名文件,无法直接run代码 
1703浏览  • 1回复 待解决
HarmonyOS  Stack能支持子组件单独定义自己的位置约束关系吗 
1539浏览  • 1回复 待解决
HarmonyOS  image组件是否支持显示字体图标 
1187浏览  • 1回复 待解决
HarmonyOS 偶现app图标显示错误 
1472浏览  • 1回复 待解决
HarmonyOS tabs位置如何居左显示 
836浏览  • 1回复 待解决
HarmonyOS  设置我的位置功能后并未显示当前位置点,需要点击定位才能显示当前定位点 
1380浏览  • 1回复 待解决
Navigation的menus中的icon属性无法展示图标 
3781浏览  • 1回复 待解决
HarmonyOS  ability的启动图标和背景是否可以不显示 
1223浏览  • 1回复 待解决
HarmonyOS 设置setMyLocationEnabled(true)未显示当前位置 
999浏览  • 1回复 待解决
Popup弹出的位置无法控制,弹出的时间无法控制 
2510浏览  • 1回复 待解决
HarmonyOS 是否可以自定义listItem的swipeAction的显示位置 
861浏览  • 1回复 待解决
HarmonyOS stack子view无法自由调位置 
757浏览  • 1回复 待解决
HarmonyOS开发中设置我的位置功能后并未显示当前位置点,需要点击定位才能显示当前定位点? 
941浏览  • 0回复 待解决





















可以参考如下demo示例