使用具有约束布局的设计支持库
Using design support library with constraint layout
我尝试在 ConstraintLayout 中使用支持设计库中的 TextInputLayout,但出现错误:
android.widget.LinearLayout$LayoutParams
cannot be cast to android.support.constraint.ConstraintLayout$LayoutParams
如何使用 ConstraintLayout 实现与 support.design.widget.TextInputLayout 相同的功能?
完整布局在这里:http://pastebin.com/TjC0FAdS
问题是:
<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:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/constraintLayout">
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<AutoCompleteTextView
android:layout_width="0dp"
android:layout_height="0dp"
android:singleLine="true"
android:id="@+id/email"
android:hint="@string/prompt_email"
app:layout_constraintLeft_toRightOf="@+id/imageView3"
android:layout_marginStart="8dp"
app:layout_constraintTop_toBottomOf="@+id/logo"
android:layout_marginTop="16dp"
app:layout_constraintRight_toRightOf="@+id/constraintLayout"
android:layout_marginEnd="16dp" />
</android.support.design.widget.TextInputLayout>
</android.support.constraint.ConstraintLayout>
app:layout_constraintLeft_toRightOf
等属性要求 ConstraintLayout
成为父视图。将这些属性移动到 TextInputLayout
,它应该可以正常工作。
根据我的经验,阅读 Android 文档是很好的第一步。仿真器运行良好,但您确实希望从 OS 级别熟悉设计模式和交互。
如果您或您的公司有测试设备,我建议您使用 Android phone 几周。我对除 calls/texts 以外的所有内容都使用 Android。您将开始了解 iOS 和 Android 之间的细微差别。例如:使用 UAlerts vs Toasts vs Dialogs
--
查看资源:google.com/design/spec & http://blog.mengto.com/how-to-design-for-android-devices/ 和 Medium 文章。
Android 的文档还可以,但最好的学习方法是与以前为 Android 设计过的设计师结对。即使只是了解 iOS 和 Android 之间的差异,您也会学到很多东西。
我尝试在 ConstraintLayout 中使用支持设计库中的 TextInputLayout,但出现错误:
android.widget.LinearLayout$LayoutParams
cannot be cast to android.support.constraint.ConstraintLayout$LayoutParams
如何使用 ConstraintLayout 实现与 support.design.widget.TextInputLayout 相同的功能?
完整布局在这里:http://pastebin.com/TjC0FAdS
问题是:
<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:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/constraintLayout">
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<AutoCompleteTextView
android:layout_width="0dp"
android:layout_height="0dp"
android:singleLine="true"
android:id="@+id/email"
android:hint="@string/prompt_email"
app:layout_constraintLeft_toRightOf="@+id/imageView3"
android:layout_marginStart="8dp"
app:layout_constraintTop_toBottomOf="@+id/logo"
android:layout_marginTop="16dp"
app:layout_constraintRight_toRightOf="@+id/constraintLayout"
android:layout_marginEnd="16dp" />
</android.support.design.widget.TextInputLayout>
</android.support.constraint.ConstraintLayout>
app:layout_constraintLeft_toRightOf
等属性要求 ConstraintLayout
成为父视图。将这些属性移动到 TextInputLayout
,它应该可以正常工作。
根据我的经验,阅读 Android 文档是很好的第一步。仿真器运行良好,但您确实希望从 OS 级别熟悉设计模式和交互。
如果您或您的公司有测试设备,我建议您使用 Android phone 几周。我对除 calls/texts 以外的所有内容都使用 Android。您将开始了解 iOS 和 Android 之间的细微差别。例如:使用 UAlerts vs Toasts vs Dialogs
--
查看资源:google.com/design/spec & http://blog.mengto.com/how-to-design-for-android-devices/ 和 Medium 文章。
Android 的文档还可以,但最好的学习方法是与以前为 Android 设计过的设计师结对。即使只是了解 iOS 和 Android 之间的差异,您也会学到很多东西。