Android EditText视图在材质devise中的浮动提示
API 21是否提供了使用以下function的方法:
http://www.google.com/design/spec/components/text-fields.html#text-fields-floating-labels
我想浮动EditText提示。
谢谢!
浮动提示EditText:
在gradle中添加下面的依赖项:
compile 'com.android.support:design:22.2.0'
在布局中:
<android.support.design.widget.TextInputLayout android:id="@+id/text_input_layout" android:layout_width="match_parent" android:layout_height="wrap_content"> <EditText android:id="@+id/editText" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="UserName"/> </android.support.design.widget.TextInputLayout>
是的,截至2015年5月29日, Androiddevise支持库中提供了此function
这个库包括支持
- 浮动标签
- 浮动行动button
- 小吃店
- 导航抽屉
- 和更多
Android支持库可以在gradle中的依赖关系中导入:
compile 'com.android.support:design:22.2.0'
它应该包含在GradlePlease中! 作为使用它的一个例子:
<android.support.design.widget.TextInputLayout android:id="@+id/to_text_input_layout" android:layout_width="match_parent" android:layout_height="wrap_content"> <AutoCompleteTextView android:id="@+id/autoCompleteTextViewTo" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="To" android:layout_marginTop="45dp" /> </android.support.design.widget.TextInputLayout>
顺便说一句,编辑可能不明白,AutoCompleteTextView允许在TextInputLayout内。
Android尚未提供本地方法。 也不是AppCompat。
试试这个库: https : //github.com/rengwuxian/MaterialEditText
这可能是你想要的。
导入支持库,在项目的build.gradle文件中,在项目的依赖关系中添加以下行:
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:design:22.2.0' compile 'com.android.support:appcompat-v7:22.2.0' }
在您的UI布局中使用以下TextInputLayout:
<android.support.design.widget.TextInputLayout android:id="@+id/usernameWrapper" android:layout_width="match_parent" android:layout_height="wrap_content"> <EditText android:id="@+id/username" android:layout_width="match_parent" android:layout_height="wrap_content" android:inputType="textEmailAddress" android:hint="Username"/> </android.support.design.widget.TextInputLayout>
比在setContentView调用之后在TextInputLayout上调用setHint是因为要为浮动标签设置animation,只需使用setHint方法设置提示即可。
final TextInputLayout usernameWrapper = (TextInputLayout) findViewById(R.id.usernameWrapper); usernameWrapper.setHint("Username");
@ andruboy的build议https://gist.github.com/chrisbanes/11247418可能是你最好的select。;
https://github.com/thebnich/FloatingHintEditText与appcompat-v7 v21.0.0一起工作,但由于v21.0.0不支持EditText
子类的重音颜色, FloatingHintEditText
的下划线将是默认的纯黑色或白色。 此外,填充未针对“材质”样式EditText
进行优化,因此您可能需要对其进行调整。
不,不。 我期望在未来的api发布,但现在我们坚持与EditText。 另一个select是这个库:
https://github.com/marvinlabs/android-floatinglabel-widgets
试试这个方法
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.0.1' compile 'com.android.support:design:23.0.1'
}
更多的参考请点击这里