本帖最後由 tonyh 於 2017-6-10 18:00 編輯
以 OnClickListener 實作每點擊一次後退鍵減少一字元;以 OnLongClickListener 實作當按住後退鍵超過一秒則清空 TextView 上所有文字內容。
- package com.example.student.myapplication;
- import android.content.DialogInterface;
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.Button;
- import android.widget.TextView;
- public class MainActivity extends AppCompatActivity {
- private TextView tv2;
- private Button btn1,btn2,btn3,btn4,btn5,btn6,btn7,btn8,btn9,btn10,btn11,btn12,btn13;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- tv2=(TextView) findViewById(R.id.textView2);
- btn1= (Button) findViewById(R.id.button1);
- btn2= (Button) findViewById(R.id.button2);
- btn3= (Button) findViewById(R.id.button3);
- btn4= (Button) findViewById(R.id.button4);
- btn5= (Button) findViewById(R.id.button5);
- btn6= (Button) findViewById(R.id.button6);
- btn7= (Button) findViewById(R.id.button7);
- btn8= (Button) findViewById(R.id.button8);
- btn9= (Button) findViewById(R.id.button9);
- btn10= (Button) findViewById(R.id.button10);
- btn11= (Button) findViewById(R.id.button11);
- btn12= (Button) findViewById(R.id.button12);
- btn13= (Button) findViewById(R.id.button13);
- btn1.setOnClickListener(myListener);
- btn2.setOnClickListener(myListener);
- btn3.setOnClickListener(myListener);
- btn4.setOnClickListener(myListener);
- btn5.setOnClickListener(myListener);
- btn6.setOnClickListener(myListener);
- btn7.setOnClickListener(myListener);
- btn8.setOnClickListener(myListener);
- btn9.setOnClickListener(myListener);
- btn10.setOnClickListener(myListener);
- btn11.setOnClickListener(myListener);
- btn12.setOnClickListener(myListener);
- btn13.setOnClickListener(myListener);
- btn13.setOnLongClickListener(myListener2);
- }
- private View.OnClickListener myListener=new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- String str=tv2.getText().toString();
- switch(v.getId())
- {
- case R.id.button1:
- tv2.setText(str+"1");
- break;
- case R.id.button2:
- tv2.setText(str+"2");
- break;
- case R.id.button3:
- tv2.setText(str+"3");
- break;
- case R.id.button4:
- tv2.setText(str+"4");
- break;
- case R.id.button5:
- tv2.setText(str+"5");
- break;
- case R.id.button6:
- tv2.setText(str+"6");
- break;
- case R.id.button7:
- tv2.setText(str+"7");
- break;
- case R.id.button8:
- tv2.setText(str+"8");
- break;
- case R.id.button9:
- tv2.setText(str+"9");
- break;
- case R.id.button10:
- tv2.setText(str+"*");
- break;
- case R.id.button11:
- tv2.setText(str+"0");
- break;
- case R.id.button12:
- tv2.setText(str+"#");
- break;
- case R.id.button13:
- if(str.length()>0)
- str=str.substring(0,str.length()-1);
- System.out.println("點擊");
- tv2.setText(str);
- break;
- }
- }
- };
- private View.OnLongClickListener myListener2=new View.OnLongClickListener() {
- @Override
- public boolean onLongClick(View v) {
- if(v.getId()==R.id.button13)
- {
- tv2.setText("");
- System.out.println("長按");
- }
- return true; //若返回true則在長按事件處理後不會再被其他傾聽者處理
- }
- };
- }
複製代碼 |