統合したいAndroid.support.design.widget.TextInputLayout
自分のAndroidアプリケーション。jarファイルAndroid-support-design.jarをSDKからアプリケーションのlibフォルダーにコピーしました。以下のコードを追加しましたメールEditTextのxmlファイルで、
<!-- Email Label -->
<Android.support.design.widget.TextInputLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_marginTop="8dp"
Android:layout_marginBottom="8dp">
<EditText Android:id="@+id/input_email"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:inputType="textEmailAddress"
Android:hint="Email" />
</Android.support.design.widget.TextInputLayout>
このコードをlayout.xmlファイルに追加すると、次のようなエラーが発生します、
Exception raised during rendering: com.Android.layoutlib.bridge.MockView cannot be cast to Android.view.ViewGroup
Exception details are logged in Window > Show View > Error Log
The following classes could not be instantiated:
- Android.support.design.widget.TextInputLayout (Open Class, Show Error Log)
See the Error Log (Window > Show View) for more details.
この問題を修正するにはどうすればよいですか?.
AndroidStudioを使用する場合、Android-support-design.jarを含めないでください。代わりに、build.gradleに以下のように記述します。
dependencies {
...
compile 'com.Android.support:design:24.0.0'
...
}
編集:これが機能しない場合は、おそらく別のバージョンを使用しています。 Windowsでは、次の場所に移動します。
[Android-sdk]\extras\Android\m2repository\com\Android\support\design
Macの場合:
sdk/extras/Android/m2repository/com/Android/support/design
このディレクトリには、多数のバージョンフォルダが含まれています。 build.gradleで最新バージョンを使用します。
取り替える
Android.support.design.widget.TextInputLayout
と
com.google.Android.material.textfield.TextInputLayout
使用している依存関係はAndroidサポートライブラリの一部であり、現在サポートが終了しており、Googleではサポートされていません。代わりに、次のコードを使用してください。implementation 'com.google.Android.material:material:<version>'
そして<version>
GoogleのMavenリポジトリ または MVNリポジトリ の最新バージョン
多分あなたはここからもっと読むことができます Getting Started
私は同様の問題を抱えていましたが、TextInputLayoutデザインパターンを以下の解決済みのものに置き換えてください:
com.google.Android.material.textfield.TextInputLayout
次の行の後にbuild.gradleを追加します。
implementation 'com.Android.support:design:28.0.0'
そしてxmlファイルで使用します:
<com.google.Android.material.textfield.TextInputLayout
Android:id="@+id/inputLayoutMobile"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_marginLeft="@dimen/dimen_20dp"
Android:layout_marginRight="@dimen/dimen_20dp"
Android:hint="@string/phone_number"
Android:visibility="gone"
Android.support.design:layout_constraintTop_toBottomOf="@+id/inputLayoutAppServerUrl">
<com.google.Android.material.textfield.TextInputEditText
Android:id="@+id/edtTxtMobile"
style="@style/Style_TextView"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:drawableLeft="@drawable/ic_smartphone"
Android:drawablePadding="@dimen/dimen_10dp"
Android:inputType="number"
Android:singleLine="true"
Android:scrollbars="vertical"
Android:text="@={SettingViewModel.mMobileNo}"
Android:textSize="@dimen/font_13sp" />
</com.google.Android.material.textfield.TextInputLayout>
TextInputLayoutにIDを与えるIDを間違えています