【Android】第3章(20)示例19--全景图HelloWorld
分类:C#、Android、VS2015、百度地图应用; 创建日期:2016-02-04 百度全景图是一种实景地图服务。为用户提供城市、街道和其他环境的360度全景图像,用户可以通过该服务获得如临其境的地图浏览体验。 本示例演示如何利用百度Android全景SDK v2.2实现全景图
分类:C#、Android、VS2015、百度地图应用; 创建日期:2016-02-04
百度全景图是一种实景地图服务。为用户提供城市、街道和其他环境的360度全景图像,用户可以通过该服务获得如临其境的地图浏览体验。
本示例演示如何利用百度Android全景SDK v2.2实现全景图的检索、显示和交互功能,以便清晰方便地展示目标位置的周边环境。
在下一节准备演示较为完整的全景图示例前,这一节先用最简单的入门代码来看一下全景图的实现。
一、运行截图
本示例运行截图如下:
二、设计步骤
1、添加demo19_panodemo_Simple.xml文件
在layout文件夹下添加该文件,然后将代码改为下面的内容:
<span style="color: #0000ff;"></span><span style="color: #ff00ff;">xml version="1.0" encoding="utf-8"</span><span style="color: #0000ff;">?></span> <span style="color: #0000ff;"><span style="color: #800000;">LinearLayout </span><span style="color: #ff0000;">xmlns:android</span><span style="color: #0000ff;">="http://schemas.android.com/apk/res/android"</span><span style="color: #ff0000;"> android:layout_width</span><span style="color: #0000ff;">="fill_parent"</span><span style="color: #ff0000;"> android:layout_height</span><span style="color: #0000ff;">="fill_parent"</span><span style="color: #ff0000;"> android:orientation</span><span style="color: #0000ff;">="vertical"</span><span style="color: #0000ff;">></span> <span style="color: #0000ff;"><span style="color: #800000;">com.baidu.lbsapi.panoramaview.PanoramaView </span><span style="color: #ff0000;">android:id</span><span style="color: #0000ff;">="@+id/panorama"</span><span style="color: #ff0000;"> android:layout_width</span><span style="color: #0000ff;">="match_parent"</span><span style="color: #ff0000;"> android:layout_height</span><span style="color: #0000ff;">="wrap_content"</span><span style="color: #ff0000;"> android:clickable</span><span style="color: #0000ff;">="true"</span> <span style="color: #0000ff;">/></span> <span style="color: #0000ff;"></span><span style="color: #800000;">LinearLayout</span><span style="color: #0000ff;">></span></span></span>
2、添加Demo19PanoHelloWorld.cs文件
在SrcSdkDemos文件夹下添加该文件,然后将其内容改为下面的代码:
<span style="color: #0000ff;">using</span><span style="color: #000000;"> Android.App; </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> Android.Content.PM; </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> Android.OS; </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> Android.Widget; </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> Com.Baidu.Lbsapi.Panoramaview; </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> Com.Baidu.Lbsapi; </span><span style="color: #0000ff;">namespace</span><span style="color: #000000;"> BdMapV371Demos.SrcSdkDemos { [Activity(Label </span>= <span style="color: #800000;">"</span><span style="color: #800000;">@string/demo_name_panorama_hello</span><span style="color: #800000;">"</span><span style="color: #000000;">, ConfigurationChanges </span>= ConfigChanges.Orientation |<span style="color: #000000;"> ConfigChanges.KeyboardHidden, ScreenOrientation </span>=<span style="color: #000000;"> ScreenOrientation.Sensor)] </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> Demo19PanoHelloWorld : Activity, IMKGeneralListener { </span><span style="color: #0000ff;">PRivate</span><span style="color: #000000;"> PanoramaView mPanoView; </span><span style="color: #0000ff;">private</span><span style="color: #000000;"> BMapManager mBMapManager; </span><span style="color: #0000ff;">protected</span> <span style="color: #0000ff;">override</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> OnCreate(Bundle savedInstanceState) { </span><span style="color: #0000ff;">base</span><span style="color: #000000;">.OnCreate(savedInstanceState); mBMapManager</span>= <span style="color: #0000ff;">new</span><span style="color: #000000;"> BMapManager(applicationContext); mBMapManager.Init(</span><span style="color: #0000ff;">this</span><span style="color: #000000;">); SetContentView(Resource.Layout.demo19_panodemo_Simple); mPanoView </span>= FindViewById<panoramaview><span style="color: #000000;">(Resource.Id.panorama); </span><span style="color: #0000ff;">var</span> a =<span style="color: #000000;"> MainActivity.HeNanUniversity; mPanoView.SetPanorama(a.Longitude,a.Latitude); } </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span> OnGetPermissionState(<span style="color: #0000ff;">int</span><span style="color: #000000;"> p0) { </span><span style="color: #008000;">//</span><span style="color: #008000;">由于MainActivity已经验证过key,所以此处不需要添加任何代码</span> <span style="color: #000000;"> } </span><span style="color: #0000ff;">protected</span> <span style="color: #0000ff;">override</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> OnPause() { </span><span style="color: #0000ff;">base</span><span style="color: #000000;">.OnPause(); mPanoView.OnPause(); } </span><span style="color: #0000ff;">protected</span> <span style="color: #0000ff;">override</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> OnResume() { </span><span style="color: #0000ff;">base</span><span style="color: #000000;">.OnResume(); mPanoView.OnResume(); } </span><span style="color: #0000ff;">protected</span> <span style="color: #0000ff;">override</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> OnDestroy() { </span><span style="color: #0000ff;">base</span><span style="color: #000000;">.OnDestroy(); mPanoView.Destroy(); mBMapManager.Dispose(); } } }</span></panoramaview>
3、修改MainActivity.cs文件
在MainActivity.cs文件的demos字段定义中,去掉【示例19】下面的注释。
运行,在模拟器中用鼠标拖放观察360度旋转效果。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

最近幾天,Ice Universe 不斷披露有關 Galaxy S25 Ultra 的詳細信息,人們普遍認為這款手機將是三星的下一款旗艦智慧型手機。除此之外,洩密者聲稱三星只計劃升級一台相機

OnLeaks 現在與 Android Headlines 合作,首次展示了 Galaxy S25 Ultra,幾天前,他試圖從他的 X(以前的 Twitter)粉絲那裡籌集到 4,000 美元以上的資金,但失敗了。對於上下文,嵌入在 h 下面的渲染圖像

除了發布兩款新智慧型手機外,TCL 還發布了一款名為 NXTPAPER 14 的新 Android 平板電腦,其大螢幕尺寸是其賣點之一。 NXTPAPER 14 採用 TCL 標誌性品牌霧面液晶面板 3.0 版本

Vivo Y300 Pro剛剛全面亮相,它是最薄的中階Android手機之一,配備大電池。準確來說,這款智慧型手機厚度僅為 7.69 毫米,但配備 6,500 mAh 電池。這與最近推出的容量相同

三星尚未就何時更新其 Fan Edition (FE) 智慧型手機系列提供任何提示。目前來看,Galaxy S23 FE 仍然是該公司的最新版本,於 2023 年 10 月年初推出。

最近幾天,Ice Universe 不斷披露有關 Galaxy S25 Ultra 的詳細信息,人們普遍認為這款手機將是三星的下一款旗艦智慧型手機。除此之外,洩密者聲稱三星只計劃升級一台相機

摩托羅拉今年發布了無數設備,儘管其中只有兩款是可折疊的。就上下文而言,雖然世界上大多數地區都收到了 Razr 50 和 Razr 50 Ultra,但摩托羅拉在北美提供了 Razr 2024 和 Razr 2

Redmi Note 14 Pro Plus 現已正式成為去年 Redmi Note 13 Pro Plus 的直接後繼產品(亞馬遜售價 375 美元)。正如預期的那樣,Redmi Note 14 Pro Plus與Redmi Note 14和Redmi Note 14 Pro一起成為Redmi Note 14系列的主角。李
