2014-02-22 138 views
0

我得到一個ClassCastException當我嘗試投丟在com.sun.lwuit.Image。請幫助就如何我可以改變下面的代碼在LWUIT使用Vserv LWUIT旗幟

public void vservAdReceived(Object obj) 
    { 

     if(obj==vservAd) 
     { 

      if(((VservAd)obj).getAdType().equals(VservAd.AD_TYPE_IMAGE)) 
      { 
       com.sun.lwuit.Image imageAd=(com.sun.lwuit.Image)((VservAd)obj).getAd(); 
       //use image as com.sun.lwuit.Button icon 
      } 
      else if(((VservAd)obj).getAdType().equals(VservAd.AD_TYPE_TEXT)) 
      { 
       String textAd=(String)((VservAd)obj).getAd(); 
       //use image as com.sun.lwuit.Button text 
      } 

     } 

    } 
+0

VservAd從哪裏來?有沒有API的文檔? – Meier

回答

0

也許你得到一個標準的java-me圖像,而不是一個LWUIT圖像。 lwuit中有一個方法可以將其轉換。從文檔:

公共靜態圖像的createImage(java.lang.Object中nativeImage)

創建從給定的本地圖像(如MIDP圖像對象)的圖像

,您可以嘗試像這樣:

javax.microedition.lcdui.Image imageAdMe = 
    (javax.microedition.lcdui.Image)((VservAd)obj).getAd(); 

com.sun.lwuit.Image imageAd = com.sun.lwuit.Image.createImage(imageAdMe);