android10 系统定制:添加语言界面优化

在Settings应用中点击System->Language&input->Languages来到此界面
在这里插入图片描述
以上界面都属于Settings应用,点击Add a language跳转后的界面则在系统源码中,界面如下:

在这里插入图片描述
Settings进行了界面优化,此界面与它风格不统一,需要进行修改,最终修改的效果如下:
在这里插入图片描述

从Settings的源码可以看到他实际上是加载了系统中的一个Fragment到Settings中:LocalePickerWithRegion,继承自ListFragment。
由于ListFragment是公开的,第三方应用可能会调用,我们尽量不改他。
1.LocalePickerWithRegion的修改:

@Override
public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
       // setHasOptionsMenu(true); //去掉搜索菜单
       ...
}
     
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
  //注释此方法的代码,去掉搜索菜单
}

@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        ListView rawListView = view.findViewById(android.R.id.list);
        if (rawListView != null)
            rawListView.setDivider(null); //去掉ListView的分割线
        View mListContainer = view.findViewById(com.android.internal.R.id.listContainer);
           mListContainer.setBackgroundColor(Color.parseColor("#F2F3F5")); //修改ListFragment的整体背景
}

为了不影响ListFragment在LocalePickerWithRegion.onViewCreated中找到ListView将分割线去掉,修改背景。

2.SuggestedLocaleAdapter的修改
SuggestedLocaleAdapter是L

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值