新建activity,界面上放置Editext控件,button控件和text view控件,实现:输入一个100以内的整数,单击按钮计算出该整数个数的最小因子,并在TEXTview 控件上上显示出来
时间: 2024-09-09 12:04:30 浏览: 136
创建一个新的Android Activity并设计界面,你需要在Android Studio中完成以下步骤:
1. 创建新的Activity类:
在`src/main/java`目录下找到你的包名,并创建一个新的Java类,继承自`AppCompatActivity`,命名为`FactorActivity`。
2. 定义布局文件:
在`res/layout`目录下创建一个XML布局文件,例如`activity_factor.xml`。在这个布局文件中,你需要添加`EditText`用于输入整数,`Button`用于触发计算,以及`TextView`用于显示结果。
示例布局代码如下:
```xml
<?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"
android:padding="16dp">
<EditText
android:id="@+id/editTextNumber"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="输入一个100以内的整数"
android:inputType="number" />
<Button
android:id="@+id/buttonCompute"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="计算最小因子" />
<TextView
android:id="@+id/textViewResult"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp" />
</LinearLayout>
```
3. 编写Activity代码:
在`FactorActivity`类中,你需要设置布局,并为按钮设置点击事件监听器,在监听器中实现计算逻辑。
示例Activity代码如下:
```java
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
public class FactorActivity extends AppCompatActivity {
private EditText editTextNumber;
private Button buttonCompute;
private TextView textViewResult;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_factor);
editTextNumber = findViewById(R.id.editTextNumber);
buttonCompute = findViewById(R.id.buttonCompute);
textViewResult = findViewById(R.id.textViewResult);
buttonCompute.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int number = Integer.parseInt(editTextNumber.getText().toString());
if (number <= 100 && number > 0) {
int factor = calculateMinFactor(number);
textViewResult.setText("最小因子是: " + factor);
} else {
textViewResult.setText("请输入1到100之间的整数!");
}
}
});
}
private int calculateMinFactor(int number) {
int factor = number;
for (int i = 2; i <= number / 2; i++) {
if (number % i == 0) {
factor = i;
break;
}
}
return factor;
}
}
```
在这个例子中,`calculateMinFactor`方法用于计算最小因子,即从2开始遍历到`number/2`,找到第一个能整除`number`的数,它就是最小因子。如果找不到,则返回`number`本身。
阅读全文