问题标签 [viewroot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
16 回答
44121 浏览

android - 防止/捕获“IllegalArgumentException:参数必须是此视图的后代”错误

我有一个 ListView,里面有一些可聚焦的组件(主要是EditTexts)。是的,我知道这不是完全推荐的,但总的来说,几乎所有东西都运行良好,并且焦点集中在它必须去的地方(我必须进行一些调整)。无论如何,我的问题是,当用手指滚动列表然后在显示 IME 键盘时突然使用轨迹球时,会出现奇怪的竞争条件。某些东西必须越界并被回收,此时该offsetRectBetweenParentAndChild()方法必须启动并抛出IllegalArgumentException.

问题是这个异常被抛出在我可以插入 try/catch 的任何块之外(据我所知)。所以这个问题有两个有效的解决方案,要么:

  1. 有人知道为什么会抛出这个异常以及如何阻止它发生
  2. 有人知道如何将 try/catch 块放在至少可以让我的应用程序存活的地方。据我所知,问题在于焦点,所以它绝对不应该杀死我的应用程序(这就是它正在做的事情)。我尝试覆盖ViewGroup's 方法,但这两种offset*方法被标记为最终方法。

堆栈跟踪:

0 投票
2 回答
1814 浏览

jsf-2 - JSF2 + IceFaces 2 - 从 ViewRoot 检索 UIComponent

我很难解决以下问题。我的问题很简单:我想用红色突出显示触发验证错误的表单字段。使用 context.addMessage(...) 行将错误消息正确放置在 FacesContext 中。

我希望我的系统是通用的。所有附有消息的表单域都会自动突出显示。

我在这个网站上找到了这篇优秀文章的链接: http ://www.jroller.com/mert/entry/how_to_find_a_uicomponent

有了它,我确实为 RENDER_RESPONSE 阶段实现了 PhaseListener,它执行以下操作:

这对于我几乎所有的使用都表现得非常好。

现在,有点棘手的是我的一些表格有这样的代码:

生成的表单有几行(一个用于 revisionsDocuments 列表的每个对象),每个元素都有一个唯一标识符(clientId),如下所示:

每次迭代都将 0 更改为 1、2、...。因此,提供用于从 ViewRoot 搜索 UIComponent 的代码无法正常工作。所有表单字段都具有相同的“id”。更让我惊讶的是:他们在 FacesContext 中也有相同的“clientId”:

在浏览树时,我无法区分是否确实看到了正确的表单字段或其他任何表单字段。

有没有人提示解决这个问题?或者另一个建议来实现我的领域的亮点?我不得不承认,我真的不喜欢我的代码,我认为像我正在做的那样操作 viewRoot 很脏,但我想不出更好的解决方案来突出我的字段的通用亮点。

我在 JBOss AS 7.0.2.Final 上运行带有 JSF-Impl 2.1.1-b04 的 IceFaces 2.0.2。

预先感谢您的回答。最好的问候,帕特里克

0 投票
1 回答
248 浏览

android - android 应用程序上的 ViewRoot$CalledFromWrongThreadException

我已经阅读了一些关于此的主题,并且我确实已经采取了措施来解决它。我正在使用一个处理程序(这样我就不会在单独的线程上更新 UI),到目前为止我不明白为什么仍然会发生这种情况。

我对此很陌生,所以如果我遗漏了一些明显的东西,我不会感到惊讶。没有线程它可以正常工作,但是不会显示进程对话框。

提前谢谢了

0 投票
2 回答
1474 浏览

android - 在 android 中的单个 Activity 上加载 2 个 Web 视图

我有以下代码,它将根据请求加载两个不同的 Web 视图。

我得到以下异常:

WebView 核心线程异常:

我的日志:

0 投票
1 回答
753 浏览

jsf-2 - 添加

我有一个 JSF 页面,其中包含以下代码:

...
<f:event type="preRenderView" listener="#{page1.PreRenderViewEvent}"/> 
...

现在我需要在页面中而不是在Page1 类构造函数

我有一个 JSF 页面,其中包含以下代码:

现在我需要在页面中而不是在Page1 类构造函数中注册侦听器(Page1.PreRenderViewEvent 方法) ......类似于:

我怎样才能完成这段代码?
谢谢。


使用UIViewRoot#subscribeToViewEvent().

请注意,如果 bean 是在呈现响应阶段构建的,就像在 GET 请求期间发生的那样,这将为时已晚。您最好只在请求范围 bean 本身的构造函数中完成这项工作(或者,更清洁,在 a 中@PostConstruct)。

0 投票
1 回答
534 浏览

viewroot - 从错误的线程异常调用 Viewroot

我想定期调用函数 p(),为此我使用了 scheduleatfixedrate 方法。当我运行代码时,我得到“从错误的线程异常调用的 Viewroot”,如日志中所示。我在函数调用中添加了 onuithread 实现来解决这个问题,但它没有用。

0 投票
2 回答
1000 浏览

jsf - 什么时候在 JSF 中创建 ViewRoot?

在 JSF 中,会为每个 JSF 页面创建一个视图根。什么时候建的?

它是在每次视图呈现时构造还是依赖于支持 bean 初始化?

0 投票
1 回答
136 浏览

jsf - 在 JSF 中遍历 UIViewRoot 使用了哪种算法?

在 JSF 中,为我们的 JSF 页面创建了一个 UIViewRoot。当我们遍历它的时候,是用什么算法来遍历它的呢?

0 投票
2 回答
569 浏览

android - 为什么使用引号“titleOfApp”时我的 android 应用程序只显示在 Playstore 中?

你好,我最喜欢的社区。

也许有人有答案 我最近把我的第一个应用程序放到了 Play 商店市场,几个小时后它就出现了。但事情是第一天我没有意识到它已经在市场上,因为我找不到它的问题。所以我教我需要通过添加一些语言支持的东西来将它更新到另一个版本。在这个可爱的板上发现了一个提示,一些应用程序只会出现在搜索查询中,方法是将应用程序名称放在引号中。但是为什么会这样,有人知道我应该如何更改应用程序的名称以获得更好的搜索结果。

我已经从 Camel Case Notation "myAppTitle" 更改为 "my app title" 但这并不是我的问题的真正解决方案。

此外,我也遇到了与其他许多 Android 设备相同的问题。我的应用程序似乎可以在几乎 70% 的设备上运行(自 android v14 起),但在某些设备上会引发异常:

viewrootimpl senduseractionevent() mview == null

有些人几乎与三星设备有同样的问题......我发现一个答案是三星有一个特殊的 android 层用于触摸向导。但是如何解决这个问题呢?

提前致谢。

这是导致此问题的布局的摘录..

0 投票
0 回答
56 浏览

java - 将 ViewRoot 打印为 jsf 文件(显示标签)

如何从 ViewRoot 打印或获取 jsf 标记?我的意思是,我有原始的 jsf 文件,然后使用 bean 更改了许多属性。如何打印 jsf 文件的这个新状态?我相信正在使用 ViewRoot 但如何?我知道我可以将对象树打印为 java 对象,但我希望以带有标签的 jsf 文件的形式返回。