2016-09-20 95 views
1

我剛更新Android Studio到2.2,Gradle插件到2.2.0,我在使用DataBinding初始化視圖時在項目中出現以下錯誤。它說Type T has incompatible upper bounds。 Android Studio不提供如何解決此問題的建議。將綁定投射到確切的類不能解決問題。Android Studio 2.2數據綁定錯誤

getting this error

它仍然編譯和運行,雖然,但項目充滿了紅色的錯誤 - 每個DataBinding初始化。有任何想法嗎?

+0

如果你從'DataBindingUtil'切換到你生成的綁定類(看起來應該是'FragmentTimelineOverlayBinding'),你會得到更好的結果嗎? – CommonsWare

+0

@CommonsWare不完全,它看起來好像參數與預期的'(LayoutIflater,ViewGroup,int,DataBindingComponent)不匹配' – C0D3LIC1OU5

+0

您應該在FragmentTimelineOverlayBinding上有一個三參數'inflate '。我剛剛在AS 2.2中用Android Gradle 2.2.0的Android插件激發了我的一個書樣,並且'RowBinding.inflate(getActivity()。getLayoutInflater(),parent,false)'被識別並編譯(我的佈局是' row.xml')。 – CommonsWare

回答

0

我的項目正在工作。

private LoadImageByPicassoBinding mBinding; 

    @Nullable 
    @Override 
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 
     //mBinding = LoadImageByPicassoBinding.inflate(inflater, container, false); 
     mBinding = DataBindingUtil.inflate(inflater, R.layout.load_image_by_picasso, container, false); 
     return mBinding.getRoot(); 
    } 
6
  1. 開放gradle-wrapper.properties
  2. 更新distributionUrl https://services.gradle.org/distributions/gradle-3.1-all.zip
  3. 文件 - >的Invalidate緩存/重新啓動
  4. 廢止和重新啓動
+0

只要執行步驟3就可以解決所有問題。 +1,謝謝!如果您編輯您的答案以刪除前兩個步驟,我會接受它。 – C0D3LIC1OU5

+0

不適用於我:啓動時無法找到符號類BR –

0

利用Android Studio 2.2中 - 我不得不這樣做馬克西姆的解決方案+執行./gradlew在終端使.gradle目錄拉3.1的gradle版本,以使一切工作。