15

を使用して、ビューで 16:9 のアスペクト比を実現しようとしていPercentRelativeLayoutます。

だから私は私のbuild.gradleファイルにこの行を入れました:compile 'com.android.support:design:23.0.1'

私はこのレイアウトを使用します:

<android.support.percent.PercentRelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ImageView
        android:layout_width="match_parent"
        app:layout_aspectRatio="178%"
        android:scaleType="centerCrop"/>

</android.support.percent.PercentRelativeLayout>

問題:

  • Android Studio は次のように警告し'layout_height' should be definedますImageView
  • プロジェクトを実行すると、次のようになりましError:(15) No resource identifier found for attribute 'layout_aspectRatio'た。

では、何が問題なのですか?

4

4 に答える 4

14

正しい依存関係では、まだ警告がありました

「layout_height」を定義する必要があります

それを避けるために android:layout_height="0dp" または android:layout_width="0dp" を使用しました。

           <View
            android:layout_height="0dp"
            android:layout_width="0dp"
            app:layout_aspectRatio="75%"
            app:layout_widthPercent="100%"
             />

コンテンツが layout_aspectRatio よりも大きくなる場合は、 android:layout_height="wrap_content" を使用することもできます

于 2015-11-12T22:05:33.753 に答える
13

Percent Support Libraryを含めようとして、間違った依存関係を使用しているようです。

正しいもの(および最新バージョン)は次のとおりです。

com.android.support:percent:23.1.0

つまり、宣言された依存関係は、gradle ファイルで次のようになります。

compile 'com.android.support:percent:23.1.0'
于 2015-10-29T13:38:43.387 に答える
3

ここに g+ の投稿があります: https://plus.google.com/+AndroidDevelopers/posts/ZQS29a5yroKで、これを使用する方法を詳しく説明しています。

コメントには、layout_width/height 警告に関する議論もあります。Lint フィルターは将来の Android Studio バージョンで追加される予定ですが、それまでは を追加し<!-- suppress AndroidDomInspection -->て警告を抑制するか、単に無視することができます。

于 2016-03-16T17:41:00.473 に答える