मैं सिस्टम फ़ॉन्ट-आकार बदलने से रोकना चाहता हूं, मेरे xamarin रूपों एंड्रॉइड एप्लिकेशन पर प्रभाव। मैंने MainActivity.cs और इसके कामकाज में नीचे दिए गए कोड के साथ प्रयास किया, लेकिन यह मुझे बताता है कि इसे हटा दिया गया है (res.UpdateConfiguration)। मैंने कुछ अन्य कोड की कोशिश की, लेकिन कोई भाग्य नहीं।

public override Resources Resources
{
    get
    {
        Resources res = base.Resources;
        Configuration config = new Configuration();
        config.SetToDefaults();
        res.UpdateConfiguration(config, res.DisplayMetrics);
        return res;
    }

}
1
D.madushanka 19 जुलाई 2019, 06:51

1 उत्तर

यदि आप संरक्षित ओवरराइड का उपयोग करना पसंद नहीं करते हैं, तो आप उपयोग कर सकते हैं

private void initFontScale()
{
     Configuration configuration = Resources.Configuration;
     configuration.FontScale = (float)1.45;
     //0.85 small, 1 standard, 1.15 big,1.3 more bigger ,1.45 supper big 
     DisplayMetrics metrics = new DisplayMetrics();
     WindowManager.DefaultDisplay.GetMetrics(metrics);
     metrics.ScaledDensity = configuration.FontScale * metrics.Density;
     BaseContext.ApplicationContext.CreateConfigurationContext(configuration); BaseContext.Resources.DisplayMetrics.SetTo(metrics);
}

protected override void OnCreate(Bundle bundle)
{
    initFontScale();
    ...
}
0
Minh Seven 13 अगस्त 2020, 07:50