[英]How to use material design in android studio project
我正在嘗試在我的 android 項目中使用材料設計文本字段。
問題
當我在我的xml
代碼中使用TextInputLayout
和TextInputEditText
時,我收到一個錯誤,提示無法識別或找到這兩個類。
我嘗試導入設計支持庫,但沒有用。
題
如何在我的 android 項目中使用材料設計文本字段?
我的目標 SDK 版本是 28
這是我的 xml 代碼
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:background="@android:color/background_light"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<Button
android:id="@+id/pickImgBtn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Pick Image"
android:layout_marginRight="10dp"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="0dp"
app:layout_constraintTop_toTopOf="parent"
style="?android:attr/borderlessButtonStyle"
android:onClick="pickImage" />
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/textfieldContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@id/pickImgBtn">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/toptextfield"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="add top text"
android:padding="10dp"
android:layout_margin="10dp" />
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/bottomtextfield"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="add top text"
android:padding="10dp"
android:layout_margin="10dp" />
</com.google.android.material.textfield.TextInputLayout>
<Button
android:id="@+id/createMemeBtn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Create Meme"
android:layout_marginRight="10dp"
android:layout_marginLeft="10dp"
app:layout_constraintTop_toBottomOf="@id/textfieldContainer"
style="?android:attr/borderlessButtonStyle" />
<android.support.constraint.ConstraintLayout
android:id="@+id/memeLayout"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="51dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintLeft_toRightOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@id/createMemeBtn">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@android:color/darker_gray"/>
<TextView
android:id="@+id/toptext"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Insert Top Text Here"
android:layout_weight="0"
android:textSize="25sp"
android:layout_marginLeft="5dp"
android:layout_marginRight="10dp"
android:layout_marginTop="10dp"
android:gravity="center"
android:textStyle="bold"
android:textColor="#fff"
app:layout_constraintTop_toTopOf="parent"/>
<TextView
android:id="@+id/bottomtext"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0"
android:text="Insert Bottom Text Here"
android:textSize="25sp"
android:layout_marginLeft="5dp"
android:layout_marginRight="10dp"
android:layout_marginBottom="10dp"
android:gravity="center"
android:textStyle="bold"
android:textColor="#fff"
app:layout_constraintBottom_toBottomOf="parent"/>
</android.support.constraint.ConstraintLayout>
<Button
android:id="@+id/saveMemeBtn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Save Image"
android:layout_marginRight="10dp"
android:layout_marginLeft="10dp"
app:layout_constraintTop_toBottomOf="@id/memeLayout"
style="?android:attr/borderlessButtonStyle" />
</android.support.constraint.ConstraintLayout>
您需要使用以下代碼:
<android.support.design.widget.TextInputLayout
android:id="@+id/input_layout_email"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/input_email"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/hint_email" />
</android.support.design.widget.TextInputLayout>
如果要使用材料文本字段,則需要添加材料庫
implement com.google.android.material:material:1.0.0-beta01
注意:您不應在您的應用中同時使用
com.android.support
和com.google.android.material
依賴項。 請在此處閱讀說明
嘗試在 gradle 中遵守這個
implementation 'com.android.support:design:28.0.0-alpha3'
這在你的 xml 中
<android.support.design.widget.TextInputLayout
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColorHint="@color/light_white"
app:boxStrokeColor="@color/light_white"
app:boxStrokeWidth="1dp">
<com.lynx.zaindelivery.views.ZainEditText
android:id="@+id/ActivityLoginMobileNumberOrEmailEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/mobile_number_or_email" />
</android.support.design.widget.TextInputLayout>
注意你可以嘗試不同的風格
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.