2012-02-28 71 views
0

我正在制作一个应用程序,它在预定的时间发送短信。日程表按钮执行日程安排功能。我有三个文本区域来获取用户输入。在按下日程表按钮后,我想用提示重新设置这些文本区域。所以,我已经定义了一个功能:setHint和setHintColor不起作用

  public void resetInputFields() { 
    /** 
    * Resetting the text box to their initial values 
    * 
    * */ 
    bdayMsg.setHint("Type your Message here.."); 
    bdayMsg.setHintTextColor(R.color.text_grey); 

    phoneNum.setHint("Recipients.."); 
    phoneNum.setHintTextColor(R.color.text_grey); 

    setBirthdayButton.setHint("Date"); 
    setBirthdayButton.setHintTextColor(R.color.text_grey); 

} 

但setHint不产生影响,而它完美的作品,如果我做到以下几点:

ublic void resetInputFields() { 
    /** 
    * Resetting the text box to their initial values 
    * 
    * */ 
    bdayMsg.setText("Type your Message here.."); 
    bdayMsg.setTextColor(R.color.text_grey); 

    phoneNum.setText("Recipients.."); 
    phoneNum.setTextColor(R.color.text_grey); 

    setBirthdayButton.setText("Date"); 
    setBirthdayButton.setTextColor(R.color.text_grey); 

} 

那么我的主要问题是,我想重置我的文字区域提示不是文本...但我不能这样做....文本区域只会重置,如果我setText ....... 但我不能重置我的文本区域提示。 所以PLZ人帮我找出什么用的提示问题........

回答

3

以这种方式,用户会看到提示(提示是,如果文本不同了文本设置为""
然后 “”)

编辑:

public void resetInputFields() { 
    /** 
    * Resetting the text box to their initial values 
    * 
    * */ 
    bdayMsg.setText(""); 
    bdayMsg.setTextColor(R.color.text_grey); 

    phoneNum.setText(""); 
    phoneNum.setTextColor(R.color.text_grey); 

    setBirthdayButton.setText(""); 
    setBirthdayButton.setTextColor(R.color.text_grey); 

} 
+0

@ user102 ...我很抱歉,但我真的很困惑你想告诉我什么......我已经把文本放在里面“”.....你能澄清你的答案更多 – Prativa 2012-02-28 09:32:56

+0

我editted我的答案 – Royi 2012-02-28 09:37:12

+0

@ user102 ..我想你完全误解了我的问题.....问题其实是用setHint()而不是用setText() – Prativa 2012-02-28 09:38:31

2

尝试

bdayMsg.setHintTextColor(Color.GRAY); 
+0

只会改变文字颜色。无论如何它都不会影响提示。 – Ewoks 2012-02-28 09:40:56

+0

我编辑了我的答案表格 bdayMsg.setTextColor(Color.GRAY); 至 bdayMsg.setHintTextColor(Color.GRAY); 适用于我,除非编辑文字是重点。 – auy 2012-02-28 09:45:06

0

如果我得到了它的权利,你只是给了为例所以我想你不会同时使用两个代码示例。

解决方案很简单,但我不确定您的布局设置。你能告诉我们这种布局的XML吗?暗示

android:hint="Enter your name here" 

和默认的颜色是gray..This暗示将再次出现时,用户删除输入文字,或者如果你在某一时刻将其设置为:

通常我在布局的XML使用设置提示空字符串

如果u在同一时间,距离代码文本和提示,当然文字具有优先权,并暗示将不可见。

希望它有帮助。

+0

我将列出我的程序中发生了什么:首先 - 我设置提示第二 - 用户输入他们的数据,因此提示不再存在。第三 - 用户按提交按钮和第四 - 输入区域再次重置与他们的提示...这是我的问题是...文本区域不会resset暗示所以我尝试重置它们与文本使用第二case..and这个作品...但文字不是我想要的。我想要提示 – Prativa 2012-02-28 09:44:43

+0

通常,当开发人员使用setHint()方法时,这是因为提示将在某个时刻发生变化。我正在开发一个程序,根据所选的单选按钮,使字段的使用方式不同。在这种情况下,每次检查单选按钮时,我都需要动态更改提示。在布局xml中定义提示不适合该场景。 – James 2016-10-04 18:04:10

+0

@James setHint用于向用户提供他应该键入的内容,在她的场景中它应该始终是相同的,因此可以将它设置为xml。如果您有其他想法和问题,请提出新问题,我会很乐意提供帮助。附:希望你没有发布它4年前:)) – Ewoks 2016-10-04 19:22:11