【发布时间】:2017-02-08 14:59:12
【问题描述】:
当我触摸按钮和调试器调用 form.show 时引发错误。
Project AVA.apk 引发异常类 EJNIException,并带有消息“android.view.ViewRootImpl$CalledFromWrongThreadException:只有创建视图层次结构的原始线程才能触及其视图。”。
单元2:
var
frmSettings: TfrmSettings;
Unit1 Button onClick 事件:
procedure TfrmMain.btnSettingsClick(Sender: TObject);
begin
frmSettings:=TfrmSettings.Create(Application);
frmSettings.Show;
end;
【问题讨论】:
-
这里不足以重现您的问题。你能给我们提供一个 MCVE 吗?
-
@JerryDodge 请仔细阅读我的代码^^^。
-
我确实非常仔细地阅读了您的代码,并且我看到了我一直使用的两行代码,它们应该可以工作。这个表格里有什么?这种其他形式是否调用了其他东西?您是否在使用设备视图?您是否能够开始一个没有任何内容的新项目并重现问题?
-
只是为了试用,通过
nil而不是Application。从理论上讲,这应该按照您的方式工作,但值得一试。这是我能看到的唯一建议。 -
请确认您收到以下设置的错误消息:两种形式:1) TfrmMain 与您显示的 TButton 和 OnClick 事件。 2) TfrmSettings,空表单。