Android计算器应用程序 - 一些问题

时间:2013-01-05 16:50:27

标签: android android-linearlayout calculator

我是Android应用程序开发的新手。我正在尝试创建一个计算器应用程序,我有两个问题要问。

1 如何在LinearLayout中创建新行? 它目前看起来像这样:

[TextView的] [TextView的] [按钮]

我希望它看起来像这样:

[TextView的] [TextView的]

[按钮]

这是我的xml代码:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >

<TextView
    android:id="@+id/number1"
    android:layout_weight="1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:hint="@string/number1" />

<TextView
    android:id="@+id/number2"
    android:layout_weight="1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:hint="@string/number2" />

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/button_calculate" />

2. 如何处理“number1”和“number2”Textviews的总和并将其显示在Main Activity(TextViews所在的位置)?

3 个答案:

答案 0 :(得分:0)

线性布局可以是水平或垂直的,如果您需要行和列,则需要使用相对布局,或者只需添加一个线性布局,例如..

TextView txtvar = (TextView) findViewById(R.id.textViewIdFromXml);
txtvar.setText("blah");

这是如何连接到textview元素whit id textViewIdFromXml并为文本设置blah

答案 1 :(得分:0)

  1. 嵌套线性布局。
  2. 例如(伪xml):

    <Linear Layout : Vertical>
       <Linear Layout : Horizontal>
           <TextView />
           <TextView />
       </Linear Layout>
       <Button />
    </Linear Layout>
    

    编辑:我在Eclipse中尝试了以下内容,对我而言,它实现了我认为你的要求(尽管它看起来不那么花哨):

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
    
            <TextView
                android:id="@+id/textView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="TextView" />
    
            <TextView
                android:id="@+id/textView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="TextView" />
    
        </LinearLayout>
    
        <Button
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button" />
    
    </LinearLayout>
    

答案 2 :(得分:0)

1st Ans:创建垂直线性布局&amp;使用一个嵌套在垂直的Horinzental。但我更喜欢相对布局。

2ns Ans:使用onClickListener()按钮。 &安培;在每个onClickListener()下,使用setText()更改数字显示文本框的文本。但是在=按钮onClickListener()上使用getText()使用数字显示文本框的值并将其用于+ - 或* /