Android主题未在库项目中使用

时间:2015-05-04 05:10:08

标签: java android android-theme

我正在构建一个基于用户请求返回<div class="col-sm-12"> <p class="bg-info">Basic Information</p> </div> 的库项​​目。但是,我在库项目中创建的Views不使用我在我的应用程序中使用的主题。

例如,如果库项目返回Views,其中包含Fragment,那么即使应用程序正在使用它,EditText也不会使用AppCompat主题。

以下是我用来在库项目中膨胀EditText的基类的相关部分:

Views

public abstract class AbsInputFieldViewController<T extends AbsInputField> { protected Context getContext(){ return mFragment.getActivity().getApplicationContext(); } protected LayoutInflater getInflater(){ return (LayoutInflater)getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); } public abstract View getView(AbsInputField field, Fragment fragment); } 在几个子类中实现,它使用getView()中的LayoutInflater从布局xml中膨胀getInflater()实例。

1 个答案:

答案 0 :(得分:3)

问题是您获得了LayoutInflater getSystemService()。如果您希望LayoutInflater使用特定主题,则必须使用该主题的Context创建主题。通常是来自Context或来自Activity的{​​{1}}。试试这个:

Application