我最近将我的支持库更新为com.android.support:appcompat-v7:25.1.0
,之后如果我通过xml文件向EditText
添加文本,TextInputLayout
提示不会浮动。
我也看过this question,但它对我没用。
这是我的xml代码:
<android.support.design.widget.TextInputLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginBottom="16dp"
android:layout_marginEnd="16dp"
app:layout_constraintRight_toRightOf="parent"
android:layout_marginRight="16dp"
app:layout_constraintVertical_bias="0.0"
android:id="@+id/til1"
android:layout_marginStart="16dp"
app:layout_constraintLeft_toLeftOf="parent"
android:layout_marginLeft="16dp"
app:layout_constraintHorizontal_bias="0.33">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="From"
android:inputType="time"
android:text="09:00 AM"
android:id="@+id/from_mon"
android:textSize="14sp" />
</android.support.design.widget.TextInputLayout>
这是我的gradle依赖项:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.1.0'
compile 'com.android.support.constraint:constraint-layout:1.0.0-beta4'
compile 'uk.co.chrisjenx:calligraphy:2.2.0'
compile 'com.android.support:design:25.1.0'
compile 'com.android.support:support-v4:25.1.0'
compile 'com.android.support:recyclerview-v7:25.1.0'
compile 'com.android.support:cardview-v7:25.1.0'
compile 'com.android.volley:volley:1.0.0'
compile 'com.github.bhargavms:DotLoader:1.0.1'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'de.hdodenhof:circleimageview:2.1.0'
compile 'com.labo.kaji:fragmentanimations:0.1.1'
compile 'com.github.esafirm.android-image-picker:imagepicker:1.2.5'
testCompile 'junit:junit:4.12'
}
这是问题
您可以清楚地看到提示正在浮动。
请指导。
答案 0 :(得分:10)
您必须提供 TextInputLayout 的提示,并使用 TextInputEditText 代替 EditText
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="From">
<android.support.v7.widget.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="09:00 AM" />
</android.support.design.widget.TextInputLayout>
答案 1 :(得分:4)
更新到v7 appcompat库的25.1.0版本后,我在Toolbar
,RecyclerView
等方面遇到了许多严重错误。
我回到了版本25.0.1。
答案 2 :(得分:3)
更新: 该问题已在25.3.1
中修复这是25.1.0中的错误 https://code.google.com/p/android/issues/detail?id=230171 看来我们现在必须使用以前的25.0.1版本。
答案 3 :(得分:1)
@Rahul Sharma,
为什么在xml文件的EditText标记中使用android:hint="From"
和android:text="09:00 AM"
?
而不是在xml文件中只能使用android:hint="From
而在Java代码中,你可以动态设置文本。
我希望你能明白我的意思。 感谢。
答案 4 :(得分:1)
此问题已在Support Library Version 25.2.0中修复。请更新至25.2.0 此更新包括其他主要修复程序。
https://developer.android.com/topic/libraries/support-library/revisions.html#25-2-0
答案 5 :(得分:-2)
在build.gradle中检查您的Do更改是否为依赖项。 我认为gradle不是问题
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.1.1'
compile 'com.android.support:design:24.1.1'
}
如果没有通过更改gradle更改来解决首先检查inpul布局中的基本更改..它会在您做出更改之后挑衅地执行文本浮动..
<android.support.design.widget.TextInputLayout
android:id="@+id/til1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:focusableInTouchMode="true"
android:layout_margin="10dp">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="From"
android:inputType="time"
android:text="09:00 AM"
android:id="@+id/from_mon"
android:textSize="14sp" />
</android.support.design.widget.TextInputLayout>
注意:如果可能的话,将你的提示设置为字符串文件..这可能也是问题。