网站建设自主开发的三种方式wordpress 小视频插件
news/
2025/9/28 15:17:12/
文章来源:
网站建设自主开发的三种方式,wordpress 小视频插件,开发微信公众平台商城,国家军事新闻以下实验是利用逍遥模拟器搭建的简易计算器页面
对现有功能说明#xff1a;可实现双目运算和开方单目运算#xff1b;
待改进#xff1a;需要实现表达式的计算#xff1b;以及负数参与运算#xff1b; //XML代码?xml version1.0 encodingutf-8可实现双目运算和开方单目运算
待改进需要实现表达式的计算以及负数参与运算 //XML代码?xml version1.0 encodingutf-8?
androidx.constraintlayout.widget.ConstraintLayout xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:apphttp://schemas.android.com/apk/res-autoxmlns:toolshttp://schemas.android.com/toolsandroid:idid/mainandroid:layout_widthmatch_parentandroid:layout_heightmatch_parenttools:context.MainActivity//线性布局--方向垂直//第一行是标题“计算器”TextView//第二行是编辑框“EditText”//线性布局//放置计算器的按钮LinearLayoutandroid:idid/linearLayoutandroid:layout_width0dpandroid:layout_heightwrap_contentandroid:orientationverticalapp:layout_constraintEnd_toEndOfparentapp:layout_constraintStart_toStartOfparentapp:layout_constraintTop_toTopOfparentTextViewandroid:idid/textViewandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:gravitycenterandroid:textstring/calculatorandroid:textSize20spapp:layout_constraintEnd_toEndOfparentapp:layout_constraintStart_toStartOfparentapp:layout_constraintTop_toTopOfparent /TextViewandroid:idid/textView2android:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:gravityendandroid:textstring/zeroandroid:textSize30spapp:layout_constraintEnd_toEndOfparentapp:layout_constraintStart_toStartOfparentapp:layout_constraintTop_toTopOfid/textView //LinearLayoutLinearLayoutandroid:idid/linearLayout2android:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:layout_marginTop100dpandroid:gravitycenter_horizontalandroid:orientationhorizontalapp:layout_constraintStart_toStartOfid/linearLayoutapp:layout_constraintTop_toTopOfparent!-- app:layout_constraintTop_toBottomOfid/et_input--!-- C按钮--Buttonandroid:idid/clrandroid:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:textCandroid:textSize30sp/!-- 删除CE按钮--Buttonandroid:idid/delandroid:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:textCEandroid:textSize30sp/!-- 开方运算按钮--Buttonandroid:idid/sqrtandroid:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text√android:textSize30sp/!-- 加运算按钮--Buttonandroid:idid/addandroid:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:textandroid:textSize30sp//LinearLayoutLinearLayoutandroid:idid/linearLayout3android:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:layout_marginTop160dpandroid:gravitycenter_horizontalandroid:orientationhorizontalapp:layout_constraintStart_toStartOfid/linearLayoutapp:layout_constraintTop_toTopOfparent!-- 数字1--Buttonandroid:idid/btn_1android:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text1android:textSize30sp/!-- 数字2--Buttonandroid:idid/btn_2android:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text2android:textSize30sp/!-- 数字3--Buttonandroid:idid/btn_3android:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text3android:textSize30sp/!-- 减运算-按钮--Buttonandroid:idid/minusandroid:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text-android:textSize30sp//LinearLayoutLinearLayoutandroid:idid/linearLayout4android:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:layout_marginTop220dpandroid:gravitycenter_horizontalandroid:orientationhorizontalapp:layout_constraintStart_toStartOfparentapp:layout_constraintTop_toTopOfparent!-- 数字4--Buttonandroid:idid/btn_4android:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text4android:textSize30sp/!-- 数字5--Buttonandroid:idid/btn_5android:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text5android:textSize30sp/!-- 数字6--Buttonandroid:idid/btn_6android:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text6android:textSize30sp/!-- 乘运算*按钮--Buttonandroid:idid/mulandroid:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text*android:textSize30sp//LinearLayoutLinearLayoutandroid:idid/linearLayout5android:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:layout_marginTop280dpandroid:gravitycenter_horizontalandroid:orientationhorizontalapp:layout_constraintStart_toStartOfparentapp:layout_constraintTop_toTopOfparent!-- 数字7--Buttonandroid:idid/btn_7android:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text7android:textSize30sp/!-- 数字8--Buttonandroid:idid/btn_8android:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text8android:textSize30sp/!-- 数字9--Buttonandroid:idid/btn_9android:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text9android:textSize30sp/!-- 除/运算--Buttonandroid:idid/divandroid:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text/android:textSize30sp//LinearLayoutLinearLayoutandroid:idid/linearLayout6android:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:layout_marginTop340dpandroid:gravitycenter_horizontalandroid:orientationhorizontalapp:layout_constraintStart_toStartOfparentapp:layout_constraintTop_toTopOfparent!-- 小数点--Buttonandroid:idid/dotandroid:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text.android:textSize30sp/!-- 数字0--Buttonandroid:idid/btn_0android:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text0android:textSize30sp/!-- 负数取值--Buttonandroid:idid/negativeandroid:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:text±android:textSize30sp/!-- 等于按钮--Buttonandroid:idid/equalandroid:layout_width80dpandroid:layout_height60dpandroid:paddingRight15spandroid:paddingBottom15spandroid:textandroid:textSize30sp//LinearLayout
/androidx.constraintlayout.widget.ConstraintLayout
//MainActivity.javapackage com.example.exp2;import static android.util.Log.println;import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import androidx.lifecycle.Lifecycle;public class MainActivity extends AppCompatActivity {//数字按钮的idint[] ids {R.id.btn_0, R.id.btn_1, R.id.btn_2, R.id.btn_3, R.id.btn_4, R.id.btn_5, R.id.btn_6, R.id.btn_7, R.id.btn_8, R.id.btn_9};//Button数组Button[] nums new Button[10];Button add, minus, mul, div, sqrt, eq, clr, del, dot, negative;//结果栏TextView display;//枚举变量 State--状态自动机enum State {CLEAR, NUM1, NUM2, RESULT};State S State.CLEAR; //附初始默认状态值防止空指针出现导致出现keep stopping问题;double number1, number2;//定义op 判断运算类型int op -1;View.OnClickListener num_proc new View.OnClickListener() {Override//实现多位数字显示public void onClick(View view) {String s;switch (S) {case CLEAR:CLEAR_NUM1(); //数字键相应-变成状态NUM1s ((TextView) view).getText().toString(); //得到第一个数字按钮文字display.setText(s); //显示到文本框break;case NUM1:case NUM2:s display.getText().toString(); //从源结果框取出原内容if (s 0) {s ((TextView) view).getText().toString();//如果原文本框是0显示内容即可} else {s ((TextView) view).getText().toString(); //加上新添加的内容}display.setText(s); //重新显示到结果框break;case RESULT:break;default:;}}};Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//通过id找到对应的控件add findViewById(R.id.add);minus findViewById(R.id.minus);mul findViewById(R.id.mul);div findViewById(R.id.div);sqrt findViewById(R.id.sqrt);eq findViewById(R.id.equal);clr findViewById(R.id.clr);del findViewById(R.id.del);dot findViewById(R.id.dot);negative findViewById(R.id.negative);display findViewById(R.id.textView2); //第二个显示框显示计算结果;for (int i 0; i 10; i) {nums[i] findViewById(ids[i]);nums[i].setOnClickListener(num_proc); //给每个数字按键添加监视器;}//dot添加监听器dot.setOnClickListener(num_proc);
// negative添加监听器
// negative.setOnClickListener(new View.OnClickListener() {
// Override
// public void onClick(View view) {
//
// }
// };//clr添加监听器clr.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View view) {to_CLEAR();//State置CLEAR;}});//del后退_添加监听器del.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View view) {String str display.getText().toString();if ((str.length()) 1) {display.setText(0);} else {display.setText(str.substring(0, str.length() - 1));}}});//add添加监听器;add.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View view) {switch (S) {case CLEAR:break;case NUM1:NUM1_NUM2();//此时状态是NUM2String temp_1 display.getText().toString();number1 Double.valueOf(temp_1);display.append();op 1;break;case NUM2:case RESULT:break;default:;}}});//minus添加监听器;minus.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View view) {switch (S) {case CLEAR:break;case NUM1:NUM1_NUM2();//此时状态是NUM2String temp_1 display.getText().toString();number1 Double.valueOf(temp_1);display.append(-);op 2;break;case NUM2:case RESULT:break;default:;}}});//mul添加监听器;mul.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View view) {switch (S) {case CLEAR:break;case NUM1:NUM1_NUM2();//此时状态是NUM2String temp_1 display.getText().toString();number1 Double.valueOf(temp_1);display.append(x);op 3;break;case NUM2:case RESULT:break;default:;}}});//div添加监听器;div.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View view) {switch (S) {case CLEAR:break;case NUM1:NUM1_NUM2();String temp_1 display.getText().toString();number1 Double.valueOf(temp_1);display.append(/);op 4;break;case NUM2:case RESULT:break;default:;}}});//sqrt添加监听器;sqrt.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View view) {switch (S) {case CLEAR:CLEAR_NUM1();NUM1_NUM2();display.setText(√);op 5;break;case NUM1:case NUM2:case RESULT:break;default:;}}});//eq添加监视器eq.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View view) {switch (S) {case CLEAR:break;case NUM1:break;case NUM2:NUM2_RESULT();String temp display.getText().toString();int index;String temp_2;double end 0;if (op 1) {index temp.indexOf();temp_2 temp.substring(index 1);number2 Double.valueOf(temp_2);end number1 number2;} else if (op 2) {index temp.indexOf(-);temp_2 temp.substring(index 1);number2 Double.valueOf(temp_2);end number1 - number2;} else if (op 3) {index temp.indexOf(x);temp_2 temp.substring(index 1);number2 Double.valueOf(temp_2);end number1 * number2;} else if (op 4) {index temp.indexOf(/);temp_2 temp.substring(index 1);number2 Double.valueOf(temp_2);end number1 / number2;} else if (op 5) {// Log.d(TestApp,temp2);index temp.indexOf(√);temp_2 temp.substring(index 1);number2 Double.valueOf(temp_2);end Math.sqrt(number2);}if (end Math.floor(end)) {display.setText(String.valueOf((int) end) );} else {display.setText(end );}break;case RESULT:break;default:;}}});}void to_CLEAR() {S State.CLEAR;display.setText(0);}void CLEAR_NUM1() {S State.NUM1;}void NUM1_NUM2() {S State.NUM2;}void NUM2_RESULT() {S State.RESULT;}
}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/920762.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!