0

クリックしてデフォルト値を復元する共有プリファレンスを設定しようとすると、警告ダイアログが表示されてよろしいかと尋ねられますが、何もせず、警告ダイアログを閉じるだけです。

public class SettingsActivity extends PreferenceActivity implements
    OnSharedPreferenceChangeListener {
/** Called when the activity is first created. */

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    c = this;
    addPreferencesFromResource(R.xml.settings);
    SharedPreferences sp = PreferenceManager
            .getDefaultSharedPreferences(this);
    sp.registerOnSharedPreferenceChangeListener(this);
    datasource = new PhoneNumberDataSource(this);
    Preference restore = (Preference) findPreference("RESTORE");
    restore.setOnPreferenceClickListener(new OnPreferenceClickListener() {
        @Override
        public boolean onPreferenceClick(Preference preference) {
            createDialog();
            return false;
        }
    });
}




void createDialog() {
    Log.v("createDialog", "");
    FrameLayout fl = new FrameLayout(c);
    AlertDialog.Builder b = new AlertDialog.Builder(c).setView(fl);
    b.setTitle("Restore Defaults?");
            b.setPositiveButton("Restore",
                    new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface d,
                                int which) {
                            Log.v("restore clicked:", "");
                        }
                    });
            b.setNegativeButton("Cancel",
                    new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface d,
                                int which) {
                            Log.v("cancel clicked:", "");
                            d.dismiss();
                        }
                    }).create();
            b.show();

}

}

「クリックしたキャンセル」も「クリックした復元」もログに表示されません。ログに奇妙なものが表示"W/InputManagerService(64): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@450317b8"されます。

4

0 に答える 0