cocos2d-x C++通知Android更新UI

原创文章,欢迎转载!转载请注明: 转载自Cocos2D开发网--Cocos2Dev.com

原文链接地址: cocos2d-x C++通知Android更新UI

今天遇到一个问题,就是移植到android上的游戏在主界面显示广告,进入游戏有隐藏广告。

看看我实现的方法。

1、游戏启动时在java这边的xml里面放了一个view放置广告。在oncreate的时候初始化广告代码。

2、当进入游戏后,c++通过JNI通知java(前面我有介绍如果使用JNI),隐藏广告。

3、java这边隐藏广告:

主线程中更新UI方法,

01 privateHandler mHandler = newHandler(){
02 @Override
03 publicvoid handleMessage(Message msg) {
04 switch(msg.what) {
05 caseUPDATE_UI: {
06 //TODO 这里处理隐藏广告 adView.setVisibility(View.INVisible);
07 break;
08 }
09 default:
10 break;
11 }
12 }
13 }

当java收到通知要隐藏广告时,发出Message,通知更新UI。

1 voidhideAdView(){
2  
3 mHandler.sendEmptyMessageDelayed(UPDATE_UI, 0);
4  
5 }

注意:不要直接更新UI,必须在主线程中更新,不然会crash。

你可能感兴趣的:(java,游戏,C++,android,UI,jni)