我是这个论坛的新手,这是我的第一篇文章。所以,我创建了一个带有自定义键盘的应用程序,显示数学字符,例如积分,窦,幂.......之后,我想在EditText上插入这些字符,工作正常,但问题是我想要创建一个像https://ibb.co/F7j22BY这样的数学表达式。
我尝试过: - 我已经尝试过Mathjax,它适用于网络而不是手机,因此唯一的方法是在webview上显示表达式,而这不是我真正想要的。
jqMath是一个JavaScript模块,可以轻松地将格式化的数学表达式放入您的活动中。你可以在线下载。 download Jqmath from this link
看看这个图书馆。 https://github.com/jianzhongli/MathView
要将此库添加到项目中,请转到build.gradle(模块)并添加:
implementation 'io.github.kexanie.library:MathView:0.0.6'
然后在XML布局文件中定义MathView
<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到某处但是检索它的文本