Java 为什么我的android studio EditText视图不显示输入、输出或提示?
我的EditText与我找到的视频和文章不一样。EditText不会显示用户在输入时输入的内容,或者当我告诉输出显示时,我分配给它的提示也不会显示。现在,我有一个文本视图的输出,但如果我能让EditText正常工作,可以大大减少代码行数。我是新手,在理解上有困难。谢谢你的帮助 以下是xml文件:Java 为什么我的android studio EditText视图不显示输入、输出或提示?,java,android,android-edittext,Java,Android,Android Edittext,我的EditText与我找到的视频和文章不一样。EditText不会显示用户在输入时输入的内容,或者当我告诉输出显示时,我分配给它的提示也不会显示。现在,我有一个文本视图的输出,但如果我能让EditText正常工作,可以大大减少代码行数。我是新手,在理解上有困难。谢谢你的帮助 以下是xml文件: //DOES NOT SHOW INPUT AT TIME OF INPUT, OR WHEN TOLD TOLD BY OUTPUT. HINT DOES NOT SHOW EITHER-------
//DOES NOT SHOW INPUT AT TIME OF INPUT, OR WHEN TOLD TOLD BY OUTPUT. HINT DOES NOT SHOW EITHER-------
<EditText
android:id="@+id/MetalCounter"
android:layout_width="40dp"
android:layout_height="20dp"
android:layout_margin="4dp"
android:ems="10"
android:textAlignment="center"
android:textColor="#000000"
android:textSize="15sp"
android:hint="0"
android:textColorHint="#000000"
android:inputType="number"
app:layout_constraintRight_toLeftOf="@id/guideline"
app:layout_constraintTop_toBottomOf="@id/ResourceSubmitButton" />
//is put in top left corner for testing purposes---------------------------------
<TextView
android:id="@+id/MetalResult"
android:layout_width="40dp"
android:layout_height="20dp"
android:layout_margin="4dp"
android:text=""
android:textAlignment="center"
android:textColor="#000000"
android:textSize="15sp"
/>
嗯,我认为问题就在这一部分 android:layout\u width=“40dp” android:layout_height=“20dp” android:layout_margin=“4dp” android:ems=“10” android:textSize=“15sp” 这些属性没有很好地定义,因为您已将
layout\u margin
设置为4dp,这会导致视图收缩。因此,现在的宽度不是40dp,而是32dps,同样的,高度只有12dps,非常小,与所选的textSize
因此,我的建议是将宽度和高度属性更改为包装内容,如下所示
android:layout_width="wrap_content"
android:layout_height="wrap_content"
你可以让其他一切保持原样
评论
- 考虑更改变量以遵循
惯例camelCase
//之前
编辑文本金属计数器;
TextView MetalResult;
//之后
编辑文本金属计数器;
TextView metalResult;
- 更改提示颜色的不透明度,以便将其与文本本身区分开来
- 如果仍然存在问题,则可能是由于底部的约束。如果是这样,请张贴完整的布局文件
- 好吧,我认为问题就在于这一部分
android:layout\u width=“40dp”
android:layout_height=“20dp”
android:layout_margin=“4dp”
android:ems=“10”
android:textSize=“15sp”
这些属性没有很好地定义,因为您已将
layout\u margin
设置为4dp,这会导致视图收缩。因此,现在的宽度不是40dp,而是32dps,同样的,高度只有12dps,非常小,与所选的textSize
因此,我的建议是将宽度和高度属性更改为包装内容,如下所示
android:layout_width="wrap_content"
android:layout_height="wrap_content"
你可以让其他一切保持原样
评论
- 考虑更改变量以遵循
惯例camelCase
//之前
编辑文本金属计数器;
TextView MetalResult;
//之后
编辑文本金属计数器;
TextView metalResult;
- 更改提示颜色的不透明度,以便将其与文本本身区分开来
- 如果仍然存在问题,则可能是由于底部的约束。如果是这样,请张贴完整的布局文件
ems
属性设置为10时,意味着EditText
宽度将仅适合10个字符,即使字符数超过10个。但是,如果您需要指定允许用户输入的最大字符数,您可以使用android:maxLength=“10”
非常感谢。我不明白边距来自宽度,高度需要大于文本大小。谢谢你教我。它现在可以正常工作了,但是我不能使用wrap_内容作为宽度,因为它使盒子非常大。还有,“android:ems=“10”属性的含义是什么?如何将EditText视图限制为3位数?谢谢。当您将ems
属性设置为10时,意味着EditText
宽度将仅适合10个字符,即使字符数超过10个。但是,如果需要指定允许用户输入的最大字符数,可以使用android:maxLength=“10”