如果我更改设备字体,那么它也会更改我的应用字体。我不想根据设备字体更改我的应用字体。
所以我搜索了下面我发现的链接: https://developer.android.com/guide/topics/resources/more-resources.html#Dimension
请告诉我如何在xamarin中使用dp for android。还建议我解决这个问题的任何其他正确方法。
偷偷摸摸你
答案 0 :(得分:2)
Robbit的回答是正确的,但是Resources.UpdateConfiguration()已被弃用。 因此,目前,应该这样做:
public override Resources Resources
{
get
{
var config = new Configuration();
config.SetToDefaults();
return CreateConfigurationContext(config).Resources;
}
}
答案 1 :(得分:1)
在您的活动中,添加以下内容:
public override Resources Resources {
get
{
Resources res = base.Resources;
Configuration config = new Configuration();
config.SetToDefaults();
res.UpdateConfiguration(config, res.DisplayMetrics);
return res;
}
}
答案 2 :(得分:0)
我使用了拉斐尔的答案,但是当我尝试设置import matplotlib.pyplot as plt
data1 = pd.DataFrame({'o_lat':[-37.8095,-37.8030,-37.8050], 'o_long':[145.0000,145.0077,145.0024],
'nearest_warehouse': ['0','1','2']})
data2= pd.DataFrame({'nearest_warehouse': ['Nickolson','Thompson','Bakers'],
'o_lat':[-37.8185,-37.8126,-37.8099], 'o_long':[144.9695,144.9470,144.9952]})
df = data1.append(data2)
y = df['o_lat'].to_list()
z = df['o_long'].to_list()
n = df['nearest_warehouse'].to_list()
fig, ax = plt.subplots()
ax.scatter(z, y)
for i, txt in enumerate(n):
ax.annotate(txt, (z[i], y[i]))
plt.gca().set_aspect('equal', adjustable='box')
Application.Current.MainPage
我解决了这个问题:
Binary XML file line #1: Error inflating class <unknown>
答案 3 :(得分:0)
在 Xamarin.Forms Android MainActivity.cs 中,覆盖 Resources 并将配置设置为默认值以限制字体大小对应用程序的影响。
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
public override Resources Resources
{
get
{
Resources resource = base.Resources;
Configuration configuration = new Configuration();
configuration.SetToDefaults();
if (Build.VERSION.SdkInt >= Build.VERSION_CODES.NMr1)
{
return CreateConfigurationContext(configuration).Resources;
}
else
{
resource.UpdateConfiguration(configuration, resource.DisplayMetrics);
return resource;
}
}
}
}