解决新版Eclipse Juno 在Android google 地图 开发时的 地图ViewStyle bug

解决新版Eclipse Juno 在Android google map 开发时的 mapViewStyle bug

今天看到Eclipse出新版了,本来是不打算更新的,毕竟老版本用得顺手。

 可惜,人的好奇心会害死人。一不小心手贱就更新到了Eclipse Juno。

由于一直在做android开发,所以很快搭好了环境。话说这次插件下载的好快好快,以前憋个三小时才能下好,这次居然五分钟就完工了!太可怕了!

后来发现,其实没变快多少,因为默认只装了2.2和4.1的SDK。

接着,悲剧的一幕发生了,我试着运行自己的毕业设计,一个基于google map的软件,出错!!!

不可能啊,前两天还在旧版Eclipse上调的好好的。之间我完全没动过代码!!!

于是,拼命请教baidu , google 两位大神。可惜一直都没找到答案。

总结下来,网上有这么几种观点:

1.这是新版Eclipse的一个bug

2.只要把Theme设置成Theme.Black就行了(在我这边不行!)

3.这是因为mapView没定义style,只要在style.xml里加上定义,然后在mapView里面声明就行了

values/style.xml
<style name="mapView">

    <item name="android:gravity">center</item>
</style>

main.xml:
<com.google.android.maps.MapView
    android:id="@+id/mapview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:clickable="true"
    android:apiKey="YOUR_API_KEY"
    android:visibility="visible"
    style="@style/mapView"
/>

这个我也试过了,还是不行。

。。。。。。

最后,我总结出规律了。

1.根据错误提示信息 " Failed to find style 'mapViewStyle' in current theme " 可以知道这个mapView可能需要一个叫mapViewStyle的Style.

2.这个mapViewStyle和Theme有某种关系,很可能对应一种Theme,比如Theme.black



解决新版Eclipse Juno 在Android google 地图 开发时的 地图ViewStyle bug

。。。。探索发现的过程是很漫长的。。。。。


经过对Android UI设计的进一步研究,我终于找到解决办法了。

1.在eclipse\android-sdks\platforms\android-X(每个平台都有)\data\res\values\themes.xml中添加一项

解决新版Eclipse Juno 在Android google 地图 开发时的 地图ViewStyle bug解决新版Eclipse Juno 在Android google 地图 开发时的 地图ViewStyle bug


2.在 Manifest.xml中添加一项

解决新版Eclipse Juno 在Android google 地图 开发时的 地图ViewStyle bug
解决新版Eclipse Juno 在Android google 地图 开发时的 地图ViewStyle bug解决新版Eclipse Juno 在Android google 地图 开发时的 地图ViewStyle bug


Theme.NoTitleBar可以根据自己的情况选择,只要二者相同即可。


于是,这个问题就这样被KO了。

总而言之,这其实不算是Eclipse的bug 而是android SDK和新版插件的bug。

爱生活,爱bug,祝大家玩得愉快!