Я пытаюсь создать новый TextView через c ++.Моя проблема заключается в инициализации нового TextView.Не существует такого метода, который используется init.Сам класс огромный, и я не могу найти именно то, что ищу.Подводя итог, мне нужен метод TextView для вызова в C ++, который заменяет new
в Java.
Вот то, с чем я работаю до сих пор.Кроме того, да, я понимаю, что мне все еще нужно реализовать больше кода, чтобы добавить представление на мой экран.
jclass textView = env->FindClass("android/widget/TextView");
jmethodID newTextView = env->GetStaticMethodID(textView, "<init>", "(Landroid/content/Context;)Landroid/widget/TextView");
jmethodID setText = env->GetMethodID(textView, "setText", "(Ljava/lang/CharSequence;)V");
env->CallVoidMethod(env->CallStaticObjectMethod(textView, newTextView, "Lcom/menu/Beyond;"), setText, env->NewStringUTF("TextView Spawned"));
ОБНОВЛЕНИЕ 1 Одна новая идея заключается в простомвызовите Java-метод из C ++, который создает новый TextView.Он сохранит этот объект TextView в глобальном массиве TextView, к которому можно получить доступ из c ++.Раньше я не обращался к полю Java из c ++, поэтому, если кто-то сможет меня опередить, я буду признателен за помощь.Если у кого-то есть решение инициировать новый TextView из c ++ без Java, это будет более ценно.