我想根据每个型号更改android:提示。 (Android设备可能有不同的SD卡路径。我想设置此值。)
如何获取元素或更改属性?
如
Preferences.java
public class Preferences extends PreferenceActivity {
private void setDeviceSDCardPath () {
String defaultPath = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).getAbsolutePath();
pref = getElementById(R.preferences.pref_id); // <--- invalid, but I want to do like this
pref.hint = "ex.) " + defaultPath; // <-- also invalid
}
}
的preferences.xml
<PreferenceCategory android:title="@string/title">
<EditTextPreference
android:id="@+id/pref_id"
android:key="pref_key"
android:title="@string/pref_title"
android:summary="@string/pref_summary"
android:hint="/storage/sdcard"
android:defaultValue="/storage/sdcard/Download/"/>
</PreferenceCategory>
答案 0 :(得分:1)
your_editText.setHint("Your New hint");
选中此doc
答案 1 :(得分:1)
myTextView.setHint("My conditional hint");
答案 2 :(得分:0)
请参阅EditTextPreference的javadoc: http://developer.android.com/reference/android/preference/EditTextPreference.html
它是DialogPreference的子类,并在a中显示EditText 对话。可以通过编程方式修改此EditText getEditText(),或通过设置任何EditText属性通过XML EditTextPreference。
当你在EditTextPreference对象上使用getEditText()获得EditText对象时,你可以简单地使用setHint(String message)方法。我相信这应该有效:
EditTextPreference editPref = (EditTextPreference) findPreference(R.id.pref_id);
editPref.getEditText().setHint(message);
答案 3 :(得分:0)
yout_editText。 setSummary (&#34; 对您的偏好编辑文字的一些描述&#34;); 在xml:android:defaultValue或android:summary