我在onItemSelected中为我的案例提供了这一行info.setTextSize(TypedValue.COMPLEX_UNIT_SP, number_config);
作为一个微调器。 (它设置EditText的文本大小,其值使用微调器设置)
然后我有一个首选项活动,其中我有一个switchpreference,我希望上面的行在交换机设置为“On”时处于“活动”状态,在设置为off时处于非活动状态。因此,文本大小在设置为关闭时不会改变。你会怎么做?
非常感谢
我的微调器onItemSelected:
public void onItemSelected(AdapterView<?> parent, View v, int position, long id) {
switch (position) {
case 0:
config_textsize = "10.0f".toString();
break;
case 1:
config_textsize = "12.0f".toString();
break;
...
}
String number_config = Float.valueOf(config_textsize);
/*This line */ EditText info.setTextSize(TypedValue.COMPLEX_UNIT_SP, number_config);
}
偏好活动:
public class Settings extends PreferenceActivity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.settings);
}
}
这是我在xml中的switchpreference:
<SwitchPreference
android:key="EditTextSize"
android:title="Text Size"
android:summary="Change text size when editing" />
答案 0 :(得分:0)
尝试:
如果打开则应该返回true,否则返回false。这只是一个假设,我从来没有使用过SwitchPreference,但是尝试一下......
创建一个返回整数的方法:
private int getPosition(){
SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(YourActivity.this);
boolean switchOn = prefs.getBoolean("EditTextSize",
false);
int position=-1;
if(switchOn==false){
position=0;
}else if(switchOn==true){
position=1
}
return position;}