CN1 3.5.2でAndroidビルドを送信すると、ローカルで実行されるコードは作成されません。私のコードで何か間違っているのか環境問題であるのか誰にでも教えてくれますか?Build on CodenameOne error: "エラー:シンボルメソッドcompare(int、int)を見つけることができません"
Android用にビルドしようとしたときに表示されるエラーメッセージは、「...エラー:シンボルメソッドcompare(int、int)を見つけることができません」とVectorクラスのsortメソッドの別のものです。
関与する行は、Integer.compare(int、int)メソッドを使用しています。ここで
は、Sortメソッドを使用するコードです:
protected Vector getLearnableListModel(Vector<String> modulesSelected, Vector<String> categoriesSelected){
Vector result = MyApplication.moduleSet.getLearnableListModel(modulesSelected, categoriesSelected);
result.sort(new Comparator() {
@Override
public int compare(Object o1, Object o2) {
LearnableSpec ls1 = (LearnableSpec) o1;
LearnableSpec ls2 = (LearnableSpec) o2;
return ls1.compareTo(ls2);
}
});
return result;
}
そして、ここでは、私が上に呼び出されていることを書いたcompareToメソッドだ「ls1.compareTo(LS2);」そして、他のコンパイラエラーを生成しInteger.compare(int、int)メソッドを使用しています。
@Override
public int compareTo(LearnableSpec other) {
LinkedHashMap modLHM = MyApplication.moduleSet.getAllModules();
LinkedHashMap catLHM = MyApplication.moduleSet.getAllCategories();
int i = Integer.compare(indexOfLinkedHashMapKey(modLHM, moduleID), indexOfLinkedHashMapKey(modLHM, other.getModuleID()));
if (i != 0) return i;
i = Integer.compare(indexOfLinkedHashMapKey(catLHM,categoryID),indexOfLinkedHashMapKey(catLHM,other.getCategoryID()));
if (i != 0) return i;
return name.compareTo(other.getName());
}