我在按下保存按钮时尝试设置文本。但是当我回到视图时,文字是微弱的灰色。
消息设置的初始视图
保存前更新了有关消息设置的视图
保存并返回视图后,在“消息设置”上更新了视图。
我的SetupMessageFragment.java的源代码在https://github.com/jackygrahamez/MayDay/blob/gradle2/app/src/main/java/com/mayday/md/fragment/SetupMessageFragment.java
从sharedPreferences检索的文本有一个Log。我可以看到新文本与当前textview文本:
Fragment fragment2 = getChildFragmentManager().findFragmentById(R.id.sms_message);
((MessageTextFragment) fragment2).setActionButtonStateListener(bAction);
smsEditText = (EditText) fragment2.getView().findViewById(R.id.message_edit_text);
Log.e(">>>>", "onActivityCreated smsEditText "+smsEditText.getText().toString());
String currentMsg = SMSSettings.retrieveMessage(activity);
Log.e(">>>>", "onActivityCreated currentMsg "+currentMsg);
if(currentMsg != null) {
displaySettings(currentMsg);
}
然后是logcat
02-14 16:55:33.366 29043-29043/com.mayday.md E/>>>>﹕ onActivityCreated smsEditText I need IMMEDIATE help!
02-14 16:55:33.366 29043-29043/com.mayday.md E/>>>>﹕ onActivityCreated currentMsg I need IMMEDIATE help! Foo bar
答案 0 :(得分:0)
在colors.xml(<color name="black" value="#000000"/>
)
将“编辑文本”颜色设置为黑色。
smsEditText = (EditText) fragment2.getView().findViewById(R.id.message_edit_text);
smsEditText.setTextColor(getActivity().getResource().getColor(R.color.black));
答案 1 :(得分:0)
哟可以编辑colors.xml文件中的颜色,但是因为你想使用已经由android定义的黑色,你可以这样做:
smsEditText = (EditText) fragment2.getView().findViewById(R.id.message_edit_text);
smsEditText.setTextColor(Color.BLACK);