A factory has already been set on this LayoutInflater
2017-05-03 17:31
411 查看
AppCompatActivity 已经设置过了,源代码如下:
public void installViewFactory() { LayoutInflater layoutInflater = LayoutInflater.from(mContext); if (layoutInflater.getFactory() == null) { LayoutInflaterCompat.setFactory(layoutInflater, this); } else { if (!(LayoutInflaterCompat.getFactory(layoutInflater) instanceof AppCompatDelegateImplV9)) { Log.i(TAG, "The Activity's LayoutInflater already has a Factory installed" + " so we can not install AppCompat's"); } } }解决方法有两种,第一:继承Activity替代AppCompatActivity
第二:在super.oncreate()之前设置,如下,但这种可能存在问题,可以看大神的
http://blog.csdn.net/lmj623565791/article/details/51503977
SkinInflateFactory skinInfateFactory=new SkinInflateFactory(); LayoutInflaterCompat.setFactory(LayoutInflater.from(this),skinInflateFactory); super.onCreate(savedInstanceState);
相关文章推荐
- setLayout: Attempting to set QLayout "" on MainWindow "MainWindow", which already has a layout
- QWidget::setLayout: Attempting to set QLayout "" on MainWindow "", which already has a layout
- QT Widget::setLayout: Attempting to set QLayout “” on Widget “”, which already has a layout
- QWidget::setLayout: Attempting to set QLayout "" on MainWindow "", which already has a layout
- 安装jre时:This software has already been installed on your computer. Would you like to reinstall”
- setLayout: Attempting to set QLayout "" on MainWindow "MainWindow", which already has a layout
- setLayout: Attempting to set QLayout "" on MainWindow "MainWindow", which already has a layout
- Qt提示:setLayout: Attempting to set QLayout "" on MainWindow "MainWindow", which already has a layout
- QWidget::setLayout: Attempting to set QLayout "" on MainWindow "", which already has a layout
- QWidget::setLayout: Attempting to set QLayout "" on MainWindow "", which already has a layout
- QWidget::setLayout: Attempting to set QLayout "" on MainWindow "", which already has a layout
- zz - 'Resources' property has already been set on
- QWidget::setLayout: Attempting to set QLayout "" on MainWindow "", which already has a layout
- setLayout: Attempting to set QLayout "" on MainWindow "MainWindow", which already has a layout
- setup has detected that vmware workstation is already installed on this machine解决方法
- this web application instance has been stopped already解决办法
- getWriter() has already been called for this response
- 解决getOutputStream() has already been called for this response
- 异常:getOutputStream() has already been called for this response 的解决方法 .
- Spring hibernate: this web application instance has been stopped already