AssemblyInfo 主题,Class 库 (Android) Xamarin
AssemblyInfo Theme, Class Library (Android) Xamarin
我目前正在 Class 图书馆 (Android) 项目中工作。
该项目假设与多个其他项目一起工作,因此无法提前知道每个主要项目可能具有哪个主题。
但是,我打算使用 v7.AlertDialog,如果清单的应用程序标签上没有 Theme.AppCompat,它就无法工作,但是 Class 库(Android)没有清单。
我通过使用 assemblyinfo.cs 文件请求权限和功能获得了成功。现在我正在尝试添加以下内容:
[assembly: Application(Theme = "@android:style/Theme.AppCompat.Light")]
但是当这段代码运行时它失败了:
AlertDialog7.Builder builder = new AlertDialog7.Builder(this);
AlertDialog7 alert = builder.Create();
alert.Show();
输出:
未处理的异常:Java.Lang.IllegalStateException:您需要为此 activity.
使用 Theme.AppCompat 主题(或后代)
如果我将其添加到应用程序标签中,则项目运行没有任何问题:
android:theme="@style/Theme.AppCompat.Light"
我尝试将主题添加到 AlertDialog,但也失败了:
AlertDialog7.Builder builder = new AlertDialog7.Builder(this, <THEME>);
还尝试添加到同样失败的 Activity 标签:
[Activity(Theme = <THEME>)]
问题:如何确保 Class 库 (Android) 独立于主项目主题正常工作以及如何将主题添加到 Class 库不使用主项目清单的项目?
在这个问题上花了几个小时后,我终于在发布问题后得到了解决方案。
我只是从这里改过来的:
[assembly: Application(Theme = "@android:style/Theme.AppCompat.Light")]
为此:
[assembly: Application(Theme = "@style/Theme.AppCompat.Light")]
我目前正在 Class 图书馆 (Android) 项目中工作。 该项目假设与多个其他项目一起工作,因此无法提前知道每个主要项目可能具有哪个主题。 但是,我打算使用 v7.AlertDialog,如果清单的应用程序标签上没有 Theme.AppCompat,它就无法工作,但是 Class 库(Android)没有清单。
我通过使用 assemblyinfo.cs 文件请求权限和功能获得了成功。现在我正在尝试添加以下内容:
[assembly: Application(Theme = "@android:style/Theme.AppCompat.Light")]
但是当这段代码运行时它失败了:
AlertDialog7.Builder builder = new AlertDialog7.Builder(this);
AlertDialog7 alert = builder.Create();
alert.Show();
输出: 未处理的异常:Java.Lang.IllegalStateException:您需要为此 activity.
使用 Theme.AppCompat 主题(或后代)如果我将其添加到应用程序标签中,则项目运行没有任何问题:
android:theme="@style/Theme.AppCompat.Light"
我尝试将主题添加到 AlertDialog,但也失败了:
AlertDialog7.Builder builder = new AlertDialog7.Builder(this, <THEME>);
还尝试添加到同样失败的 Activity 标签:
[Activity(Theme = <THEME>)]
问题:如何确保 Class 库 (Android) 独立于主项目主题正常工作以及如何将主题添加到 Class 库不使用主项目清单的项目?
在这个问题上花了几个小时后,我终于在发布问题后得到了解决方案。
我只是从这里改过来的:
[assembly: Application(Theme = "@android:style/Theme.AppCompat.Light")]
为此:
[assembly: Application(Theme = "@style/Theme.AppCompat.Light")]