Android 尝试使用ttf设置字体,在活动xml中工作,但不在片段中工作

Android 尝试使用ttf设置字体,在活动xml中工作,但不在片段中工作,android,Android,我试图在Folling中的活动中设置我所有文本视图的fontfamily,并在我的活动xml部分中使用它,但片段中的文本视图保持不变 //从活动的oncreate方法调用 overrideFonts(this,getWindow().getDecorView().findViewById(android.R.id.content)); // function private void overrideFonts(final Context context, final View v)

我试图在Folling中的活动中设置我所有文本视图的fontfamily,并在我的活动xml部分中使用它,但片段中的文本视图保持不变 //从活动的oncreate方法调用

 overrideFonts(this,getWindow().getDecorView().findViewById(android.R.id.content));

// function
    private void overrideFonts(final Context context, final View v) {
        try {
            if (v instanceof ViewGroup) {
                ViewGroup vg = (ViewGroup) v;
                for (int i = 0; i < vg.getChildCount(); i++) {
                    View child = vg.getChildAt(i);
                    overrideFonts(context, child);
             }
            } else if (v instanceof TextView ) {
                ((TextView) v).setTypeface(Typeface.createFromAsset(context.getAssets(), "Pacifico.ttf"));

            }
        } catch (Exception e) {
     }
     }

在片段中调用重写项的位置?在onCreate方法中,因为在onCreateView之前调用了片段的onCreate,所以代码可能不起作用。在onCreateView或OnViewCreateD中尝试,将代码复制到每个片段的onCreateView中,但没有更改也将代码复制到主要活动的onStrat方法中,该方法一开始很好地加载了字体,但在单击任何链接或按钮字体更改丢失时,您可能不应该使用android.R.id.content和片段。只需为主视图放置id,例如安卓:id=@+id/root,然后使用justoverridefontsfindviewbyidr.id.root。顺便说一句,你的想法很好,我很感激。