Android API 23 上未显示 EditText 视图

Posted

技术标签:

【中文标题】Android API 23 上未显示 EditText 视图【英文标题】:EditText Views not showing up on Android API 23 【发布时间】:2016-08-15 12:55:29 【问题描述】:

我对 android 还很陌生,如果这是一个简单的解决方法,我深表歉意..

我最近将我的 AVD 升级到 API 23,并注意到我的应用程序发生了一些奇怪的变化,不幸的是使它变得无用。

简而言之,我的登录屏幕上的按钮和注册屏幕上的EditText 视图都消失了。我没有更改任何代码,只是升级了 API。当我在三星 Galaxy S3 上测试该应用时,该应用的外观和行为仍符合预期。

下面是更新后我的EditText 字段的截图:

这是我的注册活动布局文件:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_
android:layout_
android:fillViewport="true">

<RelativeLayout
xmlns:tools="http://schemas.android.com/tools"
android:layout_
android:layout_
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="coursematch.coursematch.Classes.RegisterActivity">

<TextView
    android:layout_
    android:layout_
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:text="Back"
    android:id="@+id/backButton2"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:onClick="backToLanding"/>

<TextView
    android:typeface="serif"
    android:layout_
    android:layout_
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="Register"
    android:id="@+id/welcomeNameTextView"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:shadowColor="#111111" />

<LinearLayout
    android:orientation="vertical"
    android:layout_
    android:layout_
    android:layout_below="@+id/welcomeNameTextView"
    android:layout_centerHorizontal="true"
    android:weightSum="1"
    android:id="@+id/linearLayout">

    <android.support.v4.widget.Space
        android:layout_
        android:layout_
        android:id="@+id/view"
        android:layout_gravity="center_horizontal"
        android:layout_weight="0.17" />

    <ImageView
        android:layout_
        android:layout_
        android:id="@+id/imageView"
        android:layout_gravity="center_horizontal"
        android:layout_weight="0.17"
        android:src="@drawable/mortarboardone" />

    <android.support.v4.widget.Space
        android:layout_
        android:layout_
        android:id="@+id/view2"
        android:layout_gravity="center_horizontal"
        android:layout_weight="0.17" />

    <TextView
        android:typeface="serif"
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="First Name"
        android:id="@+id/textView2"
        android:layout_weight="0.07" />

    <EditText
        android:singleLine="true"
        android:layout_
        android:layout_
        android:id="@+id/firstNameTextField" />

    <TextView
        android:typeface="serif"
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="Last Name"
        android:id="@+id/textView3"
        android:layout_weight="0.17"
        android:shadowColor="#000000" />

    <EditText
        android:singleLine="true"
        android:layout_
        android:layout_
        android:id="@+id/lastNameTextField"
        android:layout_gravity="center_horizontal" />

    <TextView
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="Username (Must be unique, eg JoeBloggsQESchool)"
        android:id="@+id/textView4"
        android:layout_below="@+id/linearLayout"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <EditText
        android:singleLine="true"
        android:layout_
        android:layout_
        android:id="@+id/usernameTextField"
        android:layout_gravity="center_horizontal"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true" />

    <TextView
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="Email"
        android:id="@+id/textView5" />

    <EditText
        android:singleLine="true"
        android:layout_
        android:layout_
        android:inputType="textEmailAddress"
        android:ems="10"
        android:id="@+id/emailTextField" />

    <TextView
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="Set Password"
        android:id="@+id/textView6" />

    <EditText
        android:singleLine="true"
        android:layout_
        android:layout_
        android:inputType="textPassword"
        android:ems="10"
        android:id="@+id/passwordTextField" />

    <TextView
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="Confirm Password"
        android:id="@+id/textView7" />

    <EditText
        android:singleLine="true"
        android:layout_
        android:layout_
        android:inputType="textPassword"
        android:ems="10"
        android:id="@+id/confirmPasswordTextField" />

    <Space
        android:layout_
        android:layout_ />

    <TextView
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="Passwords must be over 8 characters long, and     contain at least one of the following:"
        android:id="@+id/textView8" />

    <Space
        android:layout_
        android:layout_ />

    <TextView
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="- Upper Case Letter"
        android:id="@+id/textView9" />

    <TextView
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="- Lower Case Letter"
        android:id="@+id/textView10" />

    <TextView
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="- Number OR Symbol"
        android:id="@+id/textView11" />

    <Space
        android:layout_
        android:layout_ />

    <TextView
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="Eg: FidoTheDog1"
        android:id="@+id/textView12" />

    <Space
        android:layout_
        android:layout_ />

    <TextView
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Continue"
        android:id="@+id/textView13"
        android:layout_below="@+id/linearLayout"
        android:layout_centerHorizontal="true"
        android:onClick="toNextTier"
        android:layout_gravity="center_horizontal" />

    <Space
        android:layout_
        android:layout_ />

    <TextView
        android:layout_
        android:layout_
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:text=""
        android:id="@+id/regErrorView"
        android:layout_gravity="center_horizontal"
        android:textColor="#ff0000"
        android:textAlignment="center" />

</LinearLayout>

</RelativeLayout>
</ScrollView>

对于为什么会发生这种情况的任何帮助将不胜感激,如果这是一件小事,再次道歉。

谢谢

【问题讨论】:

更改 textColor 。有时,如果制造商将 android 系统更新到下一个级别,他们还会更改默认设置,例如视图的 textcolor。很久以前就被这个绊倒了……在这种情况下,有可能颜色刚刚变黑了…… 你用的是哪个appTheme? @Shaishav AppTheme.NoActionBar 什么是父主题? @Shaishav Theme.AppCompat.Light.DarkActionBar 【参考方案1】:

我的朋友,

有时这个 fillViewport 会出现问题(尽管从根本上说是填充整个视口).. 因此您可以安全地从 ScrollView 标记中删除..

我曾经遇到过这个问题,我的应用在棒棒糖下运行良好,但在 mashmallow 中运行不佳

【讨论】:

以上是关于Android API 23 上未显示 EditText 视图的主要内容,如果未能解决你的问题,请参考以下文章

android上未显示自定义标记图标[关闭]

Android Studio 3.0.1 上未显示新的 Flutter 项目向导

安卓出现错误: java.lang.ClassCastException: android.widget.TextView cannot be cast to android.widget.EditT

iTunes Connect 上未显示下载内容?

Android drawable 对于 API <23 和 API 23 及更高版本显示为拉伸

iOS 应用程序 - 数据仅在 iOS13 上未显示在 Today Widget 和 Notification 扩展中