美好的一天。旧时C程序员,Java和Android都是新手。抱歉。试。 我有AIDE和Eclipse以及我正在浏览的一堆教程。所有人似乎都超越了我需要使用和理解的一些基本工具。 具体来说:我只是想让应用程序对用户的输入进行一些计算,然后显示数字。在较旧的时代,我会使用类似的东西:
System.out.println(“|”+ y +“|是”+ Math.abs(y));
我找到了如何使用: ... TextView tv = new TextView(this); tv.setText(“Hello,Android”); 的setContentView(TV); ... 但这不允许数字。
此外,我还没有找到如何使用XML部分来允许动态文本或数字。例如,每个示例预编码要显示的固定文本/字符串,但是我需要在代码中创建文本/字符串然后显示它。 代码示例很棒,或者只是指向文档的指针。我真的不想花太多时间。提前致谢。人
答案 0 :(得分:1)
我不确定你的意思,“不允许数字”。不,你不能直接将int
传递给它,但你可以这样做:
TextView tv = new TextView(this);
String text = "|" + y + "| is " + Math.abs(y);
tv.setText(text);
setContentView(tv);
此外,假设您的TextView
文件中有main.xml
,例如:
<TextView
android:layout_width="200px"
android:layout_height="100px" />
然后,如果您将android:id="@+id/some_new_id"
添加到其参数中,则可以通过代码引用此TextView
。
TextView tv = (TextView) findViewById(R.id.some_new_id);
从那里,您可以执行任何您想要的操作,这些操作将从UI线程实时更新。
Android文档很棒,你可以阅读declaring layouts,其中也包括通过代码编辑这些内容。 (由于重新设计,该文档上有几个断开的链接,但大多数都在工作,Google应该提供您需要的其余部分!)
Android开发者路径很棒,希望你喜欢它!
答案 1 :(得分:1)
再加上Soxxeh的答案,如果您想要获取用户输入并在其上预先形成数学方程式,您将需要一个EditText字段:
<EditText android:id="@+id/edit_number"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
您可以通过执行以下操作在代码中使用此功能:
EditText number= (EditText)findViewById(R.id.edit_number);
String stringmunber= number.getText().toString();
float floatnumber= Float.parseFloat(stringnumber);
接下来的预成型数学:
float answer= number * number2; //number 2 is another edittext field
现在输出:
TextView tv = (TextView) findViewById(R.id.some_new_id);
tv.setText(Float.toString(answer));
希望这有帮助!