kotlinでのJavaのカスタム注釈を使用して

アリレザのrahmaty:

私はJavaでカスタムアノテーションを作成していると私はそれを使用しようとしているKotlin記述されたクラスが、コンパイル時に、私はエラーを取得しています

注釈パラメータは、コンパイル時定数でなければなりません

ここでのコードは、

@Target(ElementType.FIELD)
@Retention(RetentionPolicy.CLASS)
public @interface EdsFieldInfo {
  int persianName();
  String culomnName() default "";
  int domainVals() default -1;
}

これは私が注釈を使用している場所であります

@EdsFieldInfo(persianName = R.string.customer_file_id, culomnName = "FileId")
@ColumnInfo(name = "FileId", typeAffinity = ColumnInfo.TEXT)
var fileId: String?,

そして、エラーがここで示されています

persianName = R.string.customer_file_id

私は、このための解決策を見つけることを試みるが、私はこの問題を解決するために助けを喜ばないだろうか?ありがとうございました。

shkschneider:

以来R、コンパイル時中にコンパイルされて、私は非常にあなたがそのような使用することはできません疑うでしょうR.string.customer_file_id注釈で変数を。Androidのビルダーが実際に構築する前に、多分それはevoluatedますR

私は怖いので、あなたの代わりに定数を使用する必要があります。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=213927&siteId=1