AndroidプラットフォームのLWUITアプリケーションでネイティブコンポーネントを使用しようとしています。LWUITでAndroidネイティブコンポーネントを使用すると、IllegalArgumentExceptionが発生する
private Component createNativeTextEdit() {
final Object[] result = new Object[1];
AndroidImplementation.runOnAndroidUIThreadAndWait(LWUITActivity.currentActivity, new Runnable() {
@Override
public void run() {
EditText nativeView = new EditText(LWUITActivity.currentActivity);
nativeView.setText("Type here..");
result[0] = PeerComponent.create(nativeView);
}
});
return (Component)result[0];
}
私は、フォーム内のコンポーネントを配置します。
mMainForm = new Form();
mMainForm.setLayout(new BoxLayout(BoxLayout.Y_AXIS));
mMainForm.addComponent(createNativeTextEdit());
mMainForm.show();
それから私は「IllegalArgumentExceptionを:幅と高さは> 0でなければなりません」取得システムが新しいフォームを描画しようとしたとき。
AndroidImplementation.PeerWrapper.getBuffer()を呼び出して問題をトレースし、getWidth()およびgetHeight()が返す値はwidth = 474およびheight = 0です。
高さはどのように設定する必要がありますか?私は何が欠けていますか?
AndroidでPeerComponentを使用している実用的なサンプルプログラムについて知っていますか?私はウェブを検索しましたが、コードがどこから呼び出されたのか分からず、どのスレッドが実行されたのか分からないスニペットしか見つけられませんでした。
ありがとう。
ありがとうShai!あなたの港に手を差し伸べる方法はありますか?残念ながら私はすぐに解決策が必要です。ありがとう。 –