您好在scala上的Android SMS應用程序中工作良好,希望我只是不能找到在scala中編寫下面的java代碼的方法。任何幫助表示讚賞在Scala中將一個java對象投射到Object []
//---retrieve the SMS message received---
Object[] pdus = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
for (int i=0; i<msgs.length; i++){
msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
我必須承認,我不知道怎麼寫對象[]在斯卡拉它不是java.util.ArrayList中的[java.lang.Object繼承] 我已經使用Bundle.getStringArrayList得到一個嘗試列表[字符串]和做琴絃一個的getBytes但沒有工作... 我最後的嘗試是:
//I know I should be using an Option ...
def getSmsListFromIntent(intent:Intent):List[SmsMessage]= {
val bundle = intent.getExtras()
var ret:List[SmsMessage]= null
if (bundle != null)
ret= for { pdu <- bundle.getStringArrayList("pdus").toList } yield
SmsMessage.createFromPdu(pdu.getBytes())
else ret= List()
ret
java代碼來自:http://mobiforge.com/developing/story/sms-messaging-android 感謝所有幫助
謝謝PST,這就是我需要的東西! – user433320