代码之家  ›  专栏  ›  技术社区  ›  David Passmore Venkateshwaran Thamilselvan

矢量可绘制不覆盖

  •  0
  • David Passmore Venkateshwaran Thamilselvan  · 技术社区  · 5 年前

    我有以下目录结构:

    drawable/ic_logo.xml
    drawable-v24/ic_logo.xml
    

    我遇到的问题是 v24 ic_logo

    我不得不使用 版本是因为向量包含一个梯度,需要 startX startY

    minSdkVersion 是21,我从一个 AppCompatImageView

        <androidx.appcompat.widget.AppCompatImageView
            android:layout_width="80dp"
            android:layout_height="80dp"
            app:layout_constraintRight_toRightOf="parent"
            android:adjustViewBounds="true"
            android:src="@drawable/ic_logo"
            app:srcCompat="@drawable/ic_logo"
            app:layout_constraintTop_toTopOf="parent"/>
    

    0 回复  |  直到 5 年前
        1
  •  1
  •   David Passmore Venkateshwaran Thamilselvan    5 年前

    感谢 @PankajKantPatel

    if(Build.VERSION.SDK_INT <= Build.VERSION_CODES.M){
        logo.setImageDrawable(ResourcesCompat.getDrawable(getResources(), R.drawable.ic_logo, null));
    }else{
        logo.setImageDrawable(ResourcesCompat.getDrawable(getResources(), R.drawable.ic_logo_24, null));
    }
    

    我仍然觉得这是一个错误,因为它应该遵循同样的逻辑作为一个图像资产,我会记录一个错误与谷歌为此。