将EditText与Design lib(版本22.2.1)结合使用时,TextInputLayout以编程方式获取提示返回null.
我试图以编程方式将星号'*'附加到必填字段,因此EditText.getHint()在这种情况下返回null的事实是一个问题.
EditText editText = (EditText) findViewById(R.id.edit2);
String hint = String.format("%s *", editText.getHint());
editText.setHint(hint);
Run Code Online (Sandbox Code Playgroud)
一个简单的代码示例:Layout.xml:
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/edit2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/hello_world"
android:inputType="text"/>
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)
Java的:
EditText editText = (EditText) findViewById(R.id.edit2);
if (editText.getHint() == null) throw new AssertionError("Hint should not be null");
Run Code Online (Sandbox Code Playgroud)
依赖:编译'com.android.support:design:22.2.1'
以前相关的问题在这里!