0

美好的一天。老 C 程序员,Java 和 Android 的新手。对不起。试。我有 AIDE 和 Eclipse 以及我正在学习的一堆教程。所有这些似乎都超越了我需要使用和理解的一些基本工具。具体来说:我只是想让应用程序对用户的输入进行一些计算,然后显示数字。在较早的时候,我会使用类似的东西:

System.out.println("|" + y + "| 是 " + Math.abs(y));

我发现了如何使用: ... TextView tv = new TextView(this); tv.setText("你好,安卓"); 设置内容视图(电视);...但这不允许数字。

此外,我还没有找到如何使用 XML 部分来允许动态文本或数字。例如,每个示例都预先编码了一个要显示的固定文本/字符串,但我需要在代码中创建文本/字符串然后显示它。一个代码示例会很棒,或者只是一个指向文档的指针。我真的不想占用你太多时间。提前致谢。铝

4

2 回答 2

1

我不确定您的意思是“不允许数字”。不,您不能直接将 an 传递int给它,但您可以这样做:

TextView tv = new TextView(this);
String text = "|" + y + "| is " + Math.abs(y);
tv.setText(text);
setContentView(tv);

此外,假设您TextViewmain.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 文档很棒,您可以阅读有关声明布局的内容,其中还包括通过代码编辑这些内容。(由于重新设计,该文档上有几个断开的链接,但大多数都在工作,谷歌应该提供你需要的其余部分!)

Android 开发者之路非常棒,希望您喜欢!

于 2012-06-26T01:35:01.400 回答
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));

希望这可以帮助!

于 2012-06-26T01:48:32.230 回答