java - 以编程方式在android Edittext中获取提示文本值

标签 java android

<分区>

我必须动态更改EditTextTypeface,并且如果Typeface 更改了,还要处理提示文本。我只是做如下:

<android.support.design.widget.TextInputLayout
    android:id="@+id/input_layout_textBox"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <EditText
        android:id="@+id/textBox"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/hint_date" />
</android.support.design.widget.TextInputLayout>

我的代码 fragment 如下:

EditText textBox = (EditText) findViewById(R.id.textBox);
Typeface tf = Typeface.createFromAsset(this, "myfont.ttf");
textBox.setTypeface(tf);
String hintText = textBox.getHint().toString(); //Got NullPointerException here....
String newText = processText(hintText); //This will process the hint text;
textBox.setHint(newText);

运行程序时,出现以下异常:

java.lang.NullPointerException:尝试在空对象引用上调用接口(interface)方法“java.lang.String java.lang.CharSequence.toString()”

请帮我解决这个问题。

最佳答案

我们需要先查看 your_layout.xml 以确定这一点,但您可能正在使用设计支持库。

如果是这样,您可以获得如下提示:

((TextInputLayout)textBox.getParent()).getHint();

注意事项

这已经被回答了here . (尽管我们需要确保您使用设计支持 lin 将您的问题标记为重复)

关于java - 以编程方式在android Edittext中获取提示文本值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41922558/

相关文章:

java - 如何从另一个 Runnable 类更新 java GUI? java

android - 在 Android 应用程序中单击选项卡时打开新类时出错

java - TextWatcher.onTextChanged() 如何处理预测文本?

java - 框架布局在底部导航栏后面?

java - 如何使用移动设备关闭 Androidwear 应用程序

java - Android中Retrofit2中Part和PartMap的区别

Java FXML 从绝对路径加载(动态)

java - Servlet 中的 iText PDF

wav文件的Android音频效果并保存

java - 如何以编程方式将 Activity 主题化为对话?