【问题标题】:DatePicker causes Exception raised during rendering in LayoutEditorDatePicker 导致在 LayoutEditor 中呈现期间引发异常
【发布时间】:2014-03-24 18:20:08
【问题描述】:

我有各种使用DatePicker 的布局,突然布局编辑器停止工作,显示渲染错误。 如果我关闭自定义视图渲染沙箱,布局会正确渲染;但是尚不清楚此问题的原因,因为我没有更改任何内容,并且在出现错误之前我不需要关闭渲染沙箱。

完整的错误堆栈:

Exception raised
during rendering
:
Write access
not allowed

at com(user.timezone)

  
at com
.android.ide.common.rendering.RenderSecurityException.create(RenderSecurityException.java:52)   
at java
.android.ide.common.rendering.RenderSecurityManager.checkPermission(RenderSecurityManager.java:616)   
at com
.util.TimeZone.setDefault(TimeZone.java:713)   
at libcore
.ibm.icu.util.TimeZone.setDefault(TimeZone.java:973)   
at libcore
.icu.DateIntervalFormat_Delegate.createDateIntervalFormat(DateIntervalFormat_Delegate.java:61)   
at libcore
.icu.DateIntervalFormat.createDateIntervalFormat(DateIntervalFormat.java:-1)   
at libcore
.icu.DateIntervalFormat.getFormatter(DateIntervalFormat.java:112)   
at libcore
.icu.DateIntervalFormat.formatDateRange(DateIntervalFormat.java:102)   
at android
.icu.DateIntervalFormat.formatDateRange(DateIntervalFormat.java:71)   
at android
.text.format.DateUtils.formatDateRange(DateUtils.java:826)   
at android
.text.format.DateUtils.formatDateRange(DateUtils.java:651)   
at android
.text.format.DateUtils.formatDateRange(DateUtils.java:628)   
at android
.widget.CalendarView.setMonthDisplayed(CalendarView.java:1258)   
at android
.widget.CalendarView.goTo(CalendarView.java:1131)   
at android
.widget.CalendarView.<init>(CalendarView.java:414)   
at java
.widget.CalendarView.<init>(CalendarView.java:333)   
at android
.lang.reflect.Constructor.newInstance(Constructor.java:408)   
at android
.view.LayoutInflater.createView(LayoutInflater.java:594)   
at android
.view.LayoutInflater.onCreateView(LayoutInflater.java:669)   
at android
.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694)   
at android
.view.LayoutInflater.rInflate_Original(LayoutInflater.java:755)   
at android
.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)   
at android
.view.LayoutInflater.rInflate(LayoutInflater.java:727)   
at android
.view.LayoutInflater.inflate(LayoutInflater.java:492)   
at android
.view.LayoutInflater.inflate(LayoutInflater.java:397)   
at android
.widget.DatePicker.<init>(DatePicker.java:175)   
at java
.widget.DatePicker.<init>(DatePicker.java:149)   
at android
.lang.reflect.Constructor.newInstance(Constructor.java:408)   
at android
.view.LayoutInflater.createView(LayoutInflater.java:594)   
at android
.view.LayoutInflater.onCreateView(LayoutInflater.java:669)   
at android
.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694)   
at android
.view.LayoutInflater.rInflate_Original(LayoutInflater.java:755)   
at android
.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)   
at android
.view.LayoutInflater.rInflate(LayoutInflater.java:727)   
at android
.view.LayoutInflater.rInflate_Original(LayoutInflater.java:758)   
at android
.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)   
at android
.view.LayoutInflater.rInflate(LayoutInflater.java:727)   
at android
.view.LayoutInflater.rInflate_Original(LayoutInflater.java:758)   
at android
.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)   
at android
.view.LayoutInflater.rInflate(LayoutInflater.java:727)   
at android
.view.LayoutInflater.rInflate_Original(LayoutInflater.java:758)   
at android
.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)   
at android
.view.LayoutInflater.rInflate(LayoutInflater.java:727)   
at android
.view.LayoutInflater.rInflate_Original(LayoutInflater.java:758)   
at android
.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)   
at android
.view.LayoutInflater.rInflate(LayoutInflater.java:727)   
at android
.view.LayoutInflater.rInflate_Original(LayoutInflater.java:758)   
at android
.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)   
at android
.view.LayoutInflater.rInflate(LayoutInflater.java:727)   
at android
.view.LayoutInflater.inflate(LayoutInflater.java:492)   
Copy stack
during rend
.view.LayoutInflater.inflate(LayoutInflater.java:373)

to clipboardering(user.timezone)Turn off custom view rendering sandbox Write access not allowed during rendering

【问题讨论】:

    标签: android intellij-idea android-studio android-datepicker


    【解决方案1】:

    这是一个错误,Android Studio 出于某种未知原因没有加载在“java.io.tmpdir”中绘制布局所需的临时文件,问题在此处列出:Android Issue:63279 建议的修复是更新将您的 SDK 升级到最新版本(如果还没有),并通过“Help > Check For Updates”应用最新的 Android Studio 补丁。

    编辑:

    我发现这很有帮助:Adroid Pickers UI Reference,按照此处所述实施日期选择器后,错误消失了...

    【讨论】:

      【解决方案2】:

      我不确定它是否对你有用,但我正在使用 Intellij IDEA,我通过在 idea.properties 文件中添加以下行解决了这个问题。

      android.render.sandbox=false

      idea.properties 位于 /bin/

      【讨论】:

      • 我已经这样做了,我想知道为什么需要这个,如果之前也使用默认沙箱状态并且没有任何更改
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多