0

まず第一に、申し訳ありませんが、この投稿を作成しました。このような他の人がいることを知っていて、それらを使用しようとしましたが、動作させることができません。

私は第3版の「Hello、Android」という本を使用していますが、このaddPreferencesFromResources()方法の廃止に遭遇しました。それで修正しようとしましたが、どういうわけか正しく動作させることができません。ここで使用されていると思われるクラスがいくつかあります。

設定Javaクラス

package com.example.sudoku; 

import android.os.Bundle;
import android.preference.PreferenceActivity;

public class Prefs extends PreferenceActivity
{
    @Override
    protected void onCreate(final Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        getFragmentManager().beginTransaction().replace(android.R.id.content, new                 MyPreferenceFragment()).commit();
    }
}
public static class MyPreferenceFragment extends PreferenceFragment
{
    @Override
    public void onCreate(final Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.settings);
    }
}

これは他の投稿の1つからコピーされたものですが、私が言ったように、それを機能させることができず、理由がわかりません。

さらに、settings.xmlファイルがあります。

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" > 
<CheckBoxPreference
    android:key="music" 
    android:title="@string/music_title" 
    android:summary="@string/music_summary" 
    android:defaultValue="true" />
<CheckBoxPreference
    android:key="hints" 
    android:title="@string/hints_title" 
    android:summary="@string/hints_summary" 
    android:defaultValue="true" />
</PreferenceScreen>

また、Prefs.classを使用したアクティビティを呼び出す数独Javaクラスの一部:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) { 
        case R.id.settings:
            startActivity(new Intent(this, Prefs.class));
            return true;
        // More items go here (if any) ... 
    }
    return false;
}
4

1 に答える 1

0

すでに修正しました。設定.xmlファイルのビューをPrefsクラスのコンテンツとして実装するだけでしたが、CheckBoxPreferenceを使用できず、CheckBoxを使用する必要がありましたが、それでも非常に満足しています。それについて。

于 2013-02-07T17:38:13.297 に答える