我想创建一个将两个数字相加的android应用。
首先,我设置布局设计。
第二,我在main_activity
文件中编写了代码。
这是我的代码:
package com.example.asus.calculator;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
double num1,num2, sum;
EditText firstNumber;
EditText secondNumber;
TextView addResult;
@Override
protected void onCreate(Bundle savedInstanceState) {
//TextView addResult;
Button btnAdd;
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
firstNumber = (EditText)findViewById(R.id.editText);
secondNumber = (EditText)findViewById(R.id.editText2);
addResult = (TextView)findViewById(R.id.textView4);
btnAdd = (Button)findViewById(R.id.button);
//Button button = (Button)findViewById(R.id.button);
btnAdd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
num1 = Double.parseDouble(firstNumber.getText().toString());
//num1 = Double.parseDouble(firstNumber.getText().toString());
num2 = Double.parseDouble(secondNumber.getText().toString());
//num2 = Double.parseDouble(secondNumber.getText().toString());
sum = num1 + num2;
//sum = num1 + num2;
addResult.setText(Double.toString(sum));
// addResult.setText(Double.toString(sum));
}
});
}
}
我的代码没有错误,但是当我运行android模拟器时,它不会接受任何输入。
当我单击字母或数字时,光标会移动一个步骤,但不会显示任何输入。
我尝试了发现的那些解决方案,但没有一个对我有用:
从高级设置中,选中“启用键盘输入”。
从AVD创建虚拟设备,硬件配置文件,检查是否具有硬件键盘输入。
添加配置文件hw.keyboard = yes
但是他们都不为我工作,错误到底在哪里?
这是我的布局文件:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:id="@+id/id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="25dp"
android:layout_marginLeft="25dp"
android:text="First Number"
app:layout_constraintBottom_toBottomOf="@+id/editText"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/editText" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="25dp"
android:layout_marginLeft="25dp"
android:text="Second Number:"
app:layout_constraintBottom_toBottomOf="@+id/editText2"
app:layout_constraintStart_toStartOf="parent" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="33dp"
android:layout_marginLeft="33dp"
android:text="Result:"
app:layout_constraintBottom_toBottomOf="@+id/editText3"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/editText3" />
<EditText
android:id="@+id/editText"
android:layout_width="wrap_content"
android:layout_height="21dp"
android:layout_marginTop="103dp"
android:layout_marginEnd="16dp"
android:layout_marginRight="16dp"
android:ems="10"
android:inputType="textPersonName"
android:text="Name"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="21dp"
android:layout_marginEnd="16dp"
android:layout_marginRight="16dp"
android:ems="10"
android:inputType="textPersonName"
android:text="Name"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/editText3"
android:layout_width="wrap_content"
android:layout_height="21dp"
android:layout_marginEnd="16dp"
android:layout_marginRight="16dp"
android:layout_marginBottom="87dp"
android:ems="10"
android:inputType="textPersonName"
android:text="Name"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="41dp"
android:text="ADD"
app:layout_constraintStart_toEndOf="@+id/textView2"
app:layout_constraintTop_toBottomOf="@+id/editText2" />
</android.support.constraint.ConstraintLayout>
答案 0 :(得分:1)
显示您的XML代码,可能是:
1- you set a custom input type for Edit Text;
2- your windows/Ubuntu/mac is on a unsupported keyboard language for emulator;
3- in emulator advanced settings keyboard input is disabled ;
答案 1 :(得分:0)
EditText的高度太小,无法显示文本。因此,请增加这些视图的高度或将其更改为wrap_content
。