把專案轉成 library project 的時候
如果專案裡面有像這樣的 code
switch(id){
case R.id.xxxx:
action1();
break;
case R.id.yyyy:
action2();
break;
default:
defaultAction();
break;
}
在 ADT 14 之後會出現錯誤必須改成 if..else
像這樣
if(id == R.id.xxxx){
action1();
}else if(id == R.id.yyyy){
action2();
}else{
defaultAction();
}
原因是編譯效能考量(不改的話它也不讓你編譯就是了...)
不過工具會幫你修改
只要選取 switch 按 Ctrl-1 (Windows)(Mac 是 Cmd-1)
Convert 'switch' to 'if-else' 點兩下
code 就自動改好了
詳細可以看相關資料連結的說明
相關資料:
Android Tools Project Site: Non-constant Fields in Case Labels
沒有留言:
張貼留言