gpt4 book ai didi

java - agment.onCreatePreferences 在 androidx.preference.PreferenceFragmentCompat.onCreate(PreferenceFragmentCompat.java :228)

转载 作者:行者123 更新时间:2023-12-02 01:04:18 25 4
gpt4 key购买 nike

我尝试为我的 Android 应用程序创建一个设置 Activity ,但是当我单击应该打开设置 Activity 的按钮时,我收到以下错误,并且我的应用程序返回到我的主要 Activity 。

错误:

agment.onCreatePreferences(SettingsFragment.java:10)
at androidx.preference.PreferenceFragmentCompat.onCreate(PreferenceFragmentCompat.java:228)

错误提到的文件:

PreferenceFragmentCompat.java

       ... // Fallback to default theme.
theme = R.style.PreferenceThemeOverlay;
}
mStyledContext = new ContextThemeWrapper(getActivity(), theme);

mPreferenceManager = new PreferenceManager(mStyledContext);
mPreferenceManager.setOnNavigateToScreenListener(this);
final Bundle args = getArguments();
final String rootKey;
if (args != null) {
rootKey = getArguments().getString(ARG_PREFERENCE_ROOT);
} else {
rootKey = null;
}
onCreatePreferences(savedInstanceState, rootKey); <---line 228
} ...

设置 fragment

package com.example.padmw;

import android.os.Bundle;

import androidx.preference.PreferenceFragmentCompat;

public class SettingsFragment extends PreferenceFragmentCompat {
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);

}
}

还有我的设置 Activity

    package com.example.padmw;

import androidx.annotation.RequiresApi;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Build;
import android.os.Bundle;
import java.util.Objects;


public class SettingsActivity extends AppCompatActivity {



@RequiresApi(api = Build.VERSION_CODES.KITKAT)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings);



Objects.requireNonNull(getSupportActionBar()).setTitle("Settings");

if(findViewById(R.id.fragment_container)!= null)
{
if(savedInstanceState !=null)
return;

getSupportFragmentManager()
.beginTransaction().add(R.id.fragment_container,new SettingsFragment()).commit();
}

}
}

我还在“R.style.PreferenceThemeOverlay;”的 PreferenceFragmentCompat.java 中收到“无法解析符号 'R'”

那么问题是什么,我应该做什么?如果您需要更多信息,请告诉我。

我补充说,这些错误是在我用 getSupportFragmentManager 替换 getFragmentManager 后出现的在这里:

    package com.example.padmw;


import androidx.annotation.RequiresApi;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Build;
import android.os.Bundle;
import java.util.Objects;


public class SettingsActivity extends AppCompatActivity {



@RequiresApi(api = Build.VERSION_CODES.KITKAT)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings);



Objects.requireNonNull(getSupportActionBar()).setTitle("Settings");

if(findViewById(R.id.fragment_container)!= null)
{
if(savedInstanceState !=null)
return;

getSupportFragmentManager()
.beginTransaction().add(R.id.fragment_container,new SettingsFragment()).commit();
}

}
}

最佳答案

删除“super.onCreate(savedInstanceState);”行后,错误消失了

关于java - agment.onCreatePreferences 在 androidx.preference.PreferenceFragmentCompat.onCreate(PreferenceFragmentCompat.java :228),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57746863/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com