Browse Source

TtsSettingsActivity.java: use PreferenceFragment on Honeycomb and later.

master
Reece H. Dunn 12 years ago
parent
commit
7f6bfd929b
1 changed files with 26 additions and 4 deletions
  1. 26
    4
      android/src/com/reecedunn/espeak/TtsSettingsActivity.java

+ 26
- 4
android/src/com/reecedunn/espeak/TtsSettingsActivity.java View File

/* /*
* Copyright (C) 2013 Reece H. Dunn
* Copyright (C) 2011 The Android Open Source Project * Copyright (C) 2011 The Android Open Source Project
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");


package com.reecedunn.espeak; package com.reecedunn.espeak;


import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
import android.preference.ListPreference; import android.preference.ListPreference;
import android.preference.Preference; import android.preference.Preference;
import android.preference.Preference.OnPreferenceChangeListener; import android.preference.Preference.OnPreferenceChangeListener;
import android.preference.PreferenceActivity; import android.preference.PreferenceActivity;
import android.preference.PreferenceFragment;
import android.preference.PreferenceGroup; import android.preference.PreferenceGroup;


public class TtsSettingsActivity extends PreferenceActivity { public class TtsSettingsActivity extends PreferenceActivity {
@Override @Override
@SuppressWarnings("deprecation")
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);


addPreferencesFromResource(R.xml.preferences);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)
{
getFragmentManager().beginTransaction().replace(
android.R.id.content,
new PrefsEspeakFragment()).commit();
}
else
{
addPreferencesFromResource(R.xml.preferences);
fixListSummaries(getPreferenceScreen());
}
}


fixListSummaries(getPreferenceScreen());
public static class PrefsEspeakFragment extends PreferenceFragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

addPreferencesFromResource(R.xml.preferences);
fixListSummaries(getPreferenceScreen());
}
} }


/** /**
* change listener for all {@link ListPreference} views to fill in the * change listener for all {@link ListPreference} views to fill in the
* summary with the current entry value. * summary with the current entry value.
*/ */
private void fixListSummaries(PreferenceGroup group) {
private static void fixListSummaries(PreferenceGroup group) {
if (group == null) { if (group == null) {
return; return;
} }
* current setting. This shouldn't be necessary, since preferences are * current setting. This shouldn't be necessary, since preferences are
* supposed to automatically do this when the summary is set to "%s". * supposed to automatically do this when the summary is set to "%s".
*/ */
private final OnPreferenceChangeListener mPreferenceChangeListener =
private static final OnPreferenceChangeListener mPreferenceChangeListener =
new OnPreferenceChangeListener() { new OnPreferenceChangeListener() {
@Override @Override
public boolean onPreferenceChange(Preference preference, Object newValue) { public boolean onPreferenceChange(Preference preference, Object newValue) {

Loading…
Cancel
Save