gpt4 book ai didi

android - 如何在我的表单中显示 Android textView?

转载 作者:行者123 更新时间:2023-11-29 02:33:44 25 4
gpt4 key购买 nike

我试图在我的表单中显示一个简单的 native Android textView,但我无法绘制 textView。我正在使用以下代码:

public android.widget.TextView createNativeView() {
android.widget.TextView dynamicTextView = new android.widget.TextView(AndroidNativeUtil.getContext());
dynamicTextView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
dynamicTextView.setText(" Hello World ");
dynamicTextView.setGravity(android.view.Gravity.CENTER);
return dynamicTextView;
}

我用这个创建了一个 peerComponent 'view',在表单上表示这个 textView:

public void start() {
if(current != null){
current.show();
return;
}

Form hi = new Form("Hi World", BoxLayout.y());
TestNativeInterface n = (TestNativeInterface)NativeLookup.create(TestNativeInterface.class);

Button connect = new Button("connect","connect");
Button start = new Button("start","start");
start.addActionListener(e -> Dialog.show("Title", n.test("front", "back"), "OK", null));
PeerComponent view = n.createNativeView();

hi.add(new Label(view.getNativePeer().getClass().getSimpleName()));
hi.add(view);
hi.add(connect);
hi.add(start);

hi.show();
}

标签正确显示文本“ TextView ”,正在绘制按钮并且简单的 actionListner 工作,但 TextView 隐藏在表单中。据我了解 CN1 组件, native 元素绘制在 CN1 元素之后

感觉我可能漏掉了一 block 拼图。 native 元素是否需要类似 .draw() 的函数?如何显示此 TextView ?

在三星 A5、Android 7.0 上测试

最佳答案

代号一组件的首选大小方法发生在代号一线程上。 Android native 等效方法发生在 native Android 事件分派(dispatch)线程上,因此当您添加组件时,首选大小为 0,因此组件保持不可见。

您可以使用忽略首选尺寸的代码:

Form myForm = new Form("Native", new BorderLayout());
TestNativeInterface n = TestNativeInterface)NativeLookup.create(TestNativeInterface.class);
if(n != null && n.isSupported()) {
PeerComponent view = n.createNativeView();
myForm.add(CENTER, view);
}
myForm.show();

请注意,以您所做的方式放置组件是不可取的。我们支持“大件”项目的对等组件。例如。 map 、浏览器、视频等

它们都处理自己的滚动/手势行为。这使它们可以更好地与我们的轻量级小部件集成。

关于android - 如何在我的表单中显示 Android textView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48194460/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com