«

Unity3D中 Android插件findviewbyid返回null的解决办法

时间:2024-3-2 17:05     作者:韩俊     分类: Android


按照正常的工程来做,发现findViewById返回了一个null 导致了空指针异常。无论是直接用Unity编译apk还是用Unity导出Android工程,都会出现该问题。经过各种查找,最终找到了问题的原因。

问题的原因主要在于,在我们将自己的android工程打成jar插件时,原来的R.id.xxxxx已经被转换成相应的数字id编译进了jar包,而Unity3D在导出工程或是apk的时候,会对所有资源进行重新的id编译,这就导致我们jar中的旧id是无法获取到相应对象。解决办法如下:

//this.wv=(WebView)findViewById(R.id.ifree_brow_webview);  
int webviewID = getResources().getIdentifier("ifree_brow_webview", "id", getPackageName());  
this.wv = (WebView)findViewById(webviewID);  

标签: android

热门推荐