Как я могу написать математическое выражение на EditText? - PullRequest
3 голосов
/ 16 марта 2019

Я новичок на этом форуме, это мой первый пост.Итак, я создал приложение с пользовательской клавиатурой, которая отображает математические символы, такие как интегралы, синус, мощность .... После этого я хотел вставить эти символы в EditText, который работает нормально, но проблема в том, что яхотел создать математическое выражение примерно так: https://ibb.co/F7j22BY.

Что я пробовал: - я пробовал Mathjax, который предназначен для Интернета, а не для мобильных телефонов,так что единственный способ - показать выражение в веб-просмотре, а это не то, чего я действительно не хочу.

Ответы [ 2 ]

1 голос
/ 16 марта 2019

Проверьте эту библиотеку. https://github.com/jianzhongli/MathView

Чтобы добавить эту библиотеку в свой проект, перейдите в свой build.gradle (модуль) и добавьте:

implementation 'io.github.kexanie.library:MathView:0.0.6'

Затем определите MathView в XML-файле макета

<LinearLayout ...>

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="Formula two: from Java String with KaTeX"
    android:textStyle="bold"/>

<io.github.kexanie.library.MathView
    android:id="@+id/formula_two"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    auto:engine="KaTeX"
    >
</io.github.kexanie.library.MathView>

Затем настройте его в своем коде.

public class MainActivity extends AppCompatActivity {
MathView formula_two;
String tex = "This come from string. You can insert inline formula:" +
        " \\(ax^2 + bx + c = 0\\) " +
        "or displayed formula: $$\\sum_{i=0}^n i^2 = \\frac{(n^2+n)(2n+1)}{6}$$";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}

@Override
protected void onResume() {
    super.onResume();

    formula_two = (MathView) findViewById(R.id.formula_two);
    formula_two.setText(tex);
    editText.setHint(formula_two.getText().toString());
 }
}

, чтобы установить подсказку EditText, просто используйте editText.setHint(formula_two.getText().toString) Таким образом, вы можете сделать MathView Invisible где-нибудь, но получить его текст

1 голос
/ 16 марта 2019

jqMath - это модуль JavaScript, который позволяет легко использовать отформатированные математические выражения в вашей деятельности.Вы можете скачать его онлайн. скачайте Jqmath по этой ссылке

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...