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 地图控件为什么不显示自己位置的蓝色图标
426浏览 • 1回复 待解决
HarmonyOS 地图我的位置定位图标显示问题
403浏览 • 1回复 待解决
HarmonyOS startWindowIcon属性中的图标无法全屏显示
711浏览 • 1回复 待解决
HarmonyOS 应用图标不显示
485浏览 • 1回复 待解决
HarmonyOS shortcuts图标显示异常
170浏览 • 1回复 待解决
为什么许多应用长按图标显示的快捷菜单(shortcut)图标显示不全?
3070浏览 • 0回复 待解决
refresh组件的刷新loading图标是否支持固定位置?
792浏览 • 1回复 待解决
Refresh组件的刷新loading图标是否支持固定位置
2172浏览 • 1回复 待解决
refresh组件的刷新loading图标是否支持固定位置?
1188浏览 • 1回复 待解决
HarmonyOS 在有键盘的页面,Toast显示位置错误
654浏览 • 1回复 待解决
HarmonyOS 地图上不显示‘我的位置’图钉
708浏览 • 1回复 待解决
HarmonyOS image组件是否支持显示字体图标
496浏览 • 1回复 待解决
HarmonyOS 偶现app图标显示错误
452浏览 • 1回复 待解决
HarmonyOS tabs位置如何居左显示
303浏览 • 1回复 待解决
HarmonyOS Stack能支持子组件单独定义自己的位置约束关系吗
353浏览 • 1回复 待解决
HarmonyOS 用自己的签名文件,无法直接run代码
575浏览 • 1回复 待解决
HarmonyOS ability的启动图标和背景是否可以不显示
271浏览 • 1回复 待解决
Navigation的menus中的icon属性无法展示图标
2637浏览 • 1回复 待解决
HarmonyOS 设置我的位置功能后并未显示当前位置点,需要点击定位才能显示当前定位点
627浏览 • 1回复 待解决
Popup弹出的位置无法控制,弹出的时间无法控制
1915浏览 • 1回复 待解决
HarmonyOS 设置setMyLocationEnabled(true)未显示当前位置
398浏览 • 1回复 待解决
HarmonyOS 是否可以自定义listItem的swipeAction的显示位置
259浏览 • 1回复 待解决
HarmonyOS stack子view无法自由调位置
240浏览 • 1回复 待解决
HarmonyOS开发中设置我的位置功能后并未显示当前位置点,需要点击定位才能显示当前定位点?
366浏览 • 0回复 待解决
如何获取窗口当前的显示大小、位置等属性
2553浏览 • 1回复 待解决
可以参考如下demo示例