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 地图控件为什么不显示自己位置的蓝色图标
124浏览 • 1回复 待解决
HarmonyOS startWindowIcon属性中的图标无法全屏显示
543浏览 • 1回复 待解决
HarmonyOS 应用图标不显示
138浏览 • 1回复 待解决
HarmonyOS shortcuts图标显示异常
83浏览 • 1回复 待解决
为什么许多应用长按图标显示的快捷菜单(shortcut)图标显示不全?
2708浏览 • 0回复 待解决
refresh组件的刷新loading图标是否支持固定位置?
1062浏览 • 1回复 待解决
Refresh组件的刷新loading图标是否支持固定位置
2053浏览 • 1回复 待解决
refresh组件的刷新loading图标是否支持固定位置?
680浏览 • 1回复 待解决
HarmonyOS 偶现app图标显示错误
186浏览 • 1回复 待解决
HarmonyOS image组件是否支持显示字体图标
177浏览 • 1回复 待解决
HarmonyOS 在有键盘的页面,Toast显示位置错误
433浏览 • 1回复 待解决
HarmonyOS 地图上不显示‘我的位置’图钉
369浏览 • 1回复 待解决
HarmonyOS 用自己的签名文件,无法直接run代码
226浏览 • 1回复 待解决
HarmonyOS Stack能支持子组件单独定义自己的位置约束关系吗
89浏览 • 1回复 待解决
HarmonyOS tabs位置如何居左显示
87浏览 • 1回复 待解决
Navigation的menus中的icon属性无法展示图标
2480浏览 • 1回复 待解决
HarmonyOS ability的启动图标和背景是否可以不显示
71浏览 • 1回复 待解决
Popup弹出的位置无法控制,弹出的时间无法控制
1770浏览 • 1回复 待解决
HarmonyOS 设置我的位置功能后并未显示当前位置点,需要点击定位才能显示当前定位点
476浏览 • 1回复 待解决
HarmonyOS 设置setMyLocationEnabled(true)未显示当前位置
232浏览 • 1回复 待解决
HarmonyOS 是否可以自定义listItem的swipeAction的显示位置
124浏览 • 1回复 待解决
HarmonyOS开发中设置我的位置功能后并未显示当前位置点,需要点击定位才能显示当前定位点?
261浏览 • 0回复 待解决
HarmonyOS heif图片无法显示
117浏览 • 1回复 待解决
如何获取窗口当前的显示大小、位置等属性
2320浏览 • 1回复 待解决
HarmonyOS stack子view无法自由调位置
85浏览 • 1回复 待解决
可以参考如下demo示例