BindingAdapter
を使用しているプロジェクトをコンパイルすると、Androidスタジオは常に警告を表示し、ソースファイルにジャンプします。コードはBindingAdapter
です。どのように解決できますか?コンパイル時にそれを表示するにはまた、私は誰も助けてくれるネームスペースアプリまたは他のを削除したくありません。ありがとうございました!!!
警告は以下の通りです:
例のソースコード:注釈の名前空間: Android Studioアプリケーション名空間についての警告
0
A
答えて
0
@Michael Spitsinコメントで指摘したように、単に「アプリ」を削除します。レイアウトXMLに "app:"名前空間を保持することができます。名前空間はandroid:
でない限り内部的に削除されます。他のすべての名前空間は同じように扱われます。
警告は、名前空間が注釈に影響を与えないことを通知する役割を果たします。したがって、たとえば、@BindingAdapter("app:src")
と@BindingAdapter("foo:src")
の異なるメソッドを持つことはできません。名前空間は、その注釈の実装でキーとして使用される前に削除されます。唯一の例外はandroid
名前空間です。 @BindingAdapter("android:src")
、さらに@BindingAdapter("app:src")
とすることができます。
@BindingAdapter
注釈を実装するソースコードを調べると、警告の理由である名前空間が削除されていることがわかります。例えば、android.databinding.tool.store.SetterStore.addBindingAdapter
からこの抜粋に:
public void addBindingAdapter(ProcessingEnvironment processingEnv, String attribute,
ExecutableElement bindingMethod, boolean takesComponent) {
attribute = stripNamespace(attribute);
...あなたがそうのように、名前空間が取り除かれていることがわかります。
private static String stripNamespace(String attribute) {
if (!attribute.startsWith("android:")) {
int colon = attribute.indexOf(':');
if (colon >= 0) {
attribute = attribute.substring(colon + 1);
}
}
return attribute;
}
これが行われていることが結合アダプタは全体の作業する必要があるため、特定のXMLファイル内の名前空間に使用された文字列に関係なく、プロジェクト内のすべてのソースファイル。
関連する問題
- 1. JsDocツールキットと名前空間 - 警告なしにしようとする警告
- 2. PackageManager.GET_SIGNATURESを使用している場合のAndroid Studioの警告
- 3. SVN-gitがソースファイルの空のディレクトリについての警告
- 4. Rubocop警告:スタイル/ EndOfLineに間違った名前空間があります
- 5. pep8は警告約8空間インデント
- 6. クラス(名前)の廃止についての警告方法
- 7. Visual Studioと名前空間
- 8. TeamcityのVisual Studio警告の報告
- 9. リンカの警告C++ Visual Studio
- 10. Visual Studio 2013コンパイラの警告
- 11. "xsd:date"についての警告
- 12. 警告:substr_count():空のサブ
- 13. Android Studio 3.0 lintアクティビティへの参照に関する警告
- 14. Visual Studio名前でテストエクスプローラグループ名前空間
- 15. 名前空間ファイル全体のStyleCop警告を抑制する方法
- 16. Visual Studio C#参照 - 警告
- 17. Androidの名前空間
- 18. Visual Studio 2008デザイナーが生成したコードの変更についての警告
- 19. Visual Studioでプロジェクト間で警告を無効にする方法
- 20. IntelliJ警告の警告名を@SupressWarningsにする方法は?
- 21. Android:メディアプレーヤー警告(1,44)
- 22. 名前空間。 Visual Studioプロジェクトの設定
- 23. Visual Studioの名前空間/クラスエイリアスHtmlソースモード
- 24. Android DataBinding - @BindingAdapterカスタムのアプリケーション名前空間が無視されています
- 25. 3つのアプリケーション1つの名前空間
- 26. Android Studioの警告ビューはどこですか?
- 27. テーマ名前空間Android
- 28. Androidの警告ダイアログを削除する上部の空きスペース
- 29. Android - 推奨されていないAndroidスタジオでのNDK警告
- 30. 警告 - タイプのコール署名
[この回答](http://stackoverflow.com/questions/35313466/android-databinding-custom-binding-adapter-warning)によると、 "app:"名前空間を削除するだけで済みます。 –
これは前に知っていますが、このアプリケーションの名前空間を削除したくありません。他の同僚のアンドロイドスタジオはこの種の問題を示していませんでした。これを解決する他の方法はありますか? –