gddhy

_(:з」∠)_ 加载中...
  • 主页
  • 归档
  • 工具
  • 关于
所有文章 友链

gddhy

_(:з」∠)_ 加载中...

  • 主页
  • 归档
  • 工具
  • 关于

隐藏PreferenceFragment左边无图标的空白

2021-09-11
字数统计:165字 阅读时长≈1分

最近制作设置界面发现PreferenceFragment左边会有一部分空白

自定义现实抽象类覆盖方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
public abstract class BasePreferenceFragment extends PreferenceFragmentCompat {

private void setAllPreferencesToAvoidHavingExtraSpace(Preference preference) {
preference.setIconSpaceReserved(false);
if (preference instanceof PreferenceGroup)
for(int i=0;i<((PreferenceGroup) preference).getPreferenceCount();i++){
setAllPreferencesToAvoidHavingExtraSpace(((PreferenceGroup) preference).getPreference(i));
}
}

@Override
public void setPreferenceScreen(PreferenceScreen preferenceScreen) {
if (preferenceScreen != null)
setAllPreferencesToAvoidHavingExtraSpace(preferenceScreen);
super.setPreferenceScreen(preferenceScreen);

}

@Override
protected RecyclerView.Adapter onCreateAdapter(PreferenceScreen preferenceScreen) {
return new PreferenceGroupAdapter(preferenceScreen){
@Override
public void onPreferenceHierarchyChange(Preference preference) {
if(null!=preference){
setAllPreferencesToAvoidHavingExtraSpace(preference);
}
super.onPreferenceHierarchyChange(preference);
}
};
}
}

上面方法转载自androidx.preference.PreferenceScreen 去除左边空白 - csdn0lan

也可以在 Preference 里添加 app:iconSpaceReserved="false" 解决

1
2
3
4
<Preference
app:iconSpaceReserved="false"
app:title="xxx"
app:summary="xxx" />
赏

谢谢你请我吃糖果

微信

扫一扫,分享到微信

微信分享二维码
调用小米文件浏览器打开文件夹
在SettingsFragment中自定义储存数据的文件
目录,不存在的…
留言已关闭
:gddhy
© gddhy
Hexo Theme Yilia by Litten
  • 所有文章
  • 友链

tag:

  • Android
  • 软件分享
  • game
  • Hexo
  • JavaScript
  • 旧机博物馆
  • MIUI
  • Java
  • git
  • Termux
  • mtk
  • 原神
  • Win
  • Html
  • 安卓学习笔记

    缺失模块

  • Luminous' Home
  • 影子博客
  • 四次元领域
  • 初之音
  • Mr.Pumpkin
  • ZhaoQuinn 's Blog