Board logo

標題: 多按鈕共用事件 [打印本頁]

作者: 周政輝    時間: 2018-9-1 10:35     標題: 多按鈕共用事件

本帖最後由 周政輝 於 2018-9-1 11:59 編輯

[attach]4730[/attach]

MainActivity
  1. package com.example.student.myapplication;

  2. import android.content.Intent;
  3. import android.net.Uri;
  4. import android.support.v7.app.AppCompatActivity;
  5. import android.os.Bundle;
  6. import android.util.Log;
  7. import android.view.View;
  8. import android.widget.Button;
  9. import android.widget.TextView;

  10. public class MainActivity extends AppCompatActivity {

  11.     Button btn0;
  12.     Button btn1;
  13.     Button btn2;
  14.     Button btn3;
  15.     Button btn4;
  16.     Button btn5;
  17.     Button btn6;
  18.     Button btn7;
  19.     Button btn8;
  20.     Button btn9;
  21.     Button btn10;
  22.     Button btn11;
  23.     Button call;
  24.     TextView number;
  25.     @Override
  26.     protected void onCreate(Bundle savedInstanceState) {
  27.         super.onCreate(savedInstanceState);
  28.         setContentView(R.layout.activity_main);
  29.         Init();
  30.     }


  31.    Button.OnClickListener listener = new View.OnClickListener() {

  32.        @Override
  33.        public void onClick(View v) {
  34.            Button tmp = (Button) findViewById(v.getId());
  35.            number.setText(number.getText().toString() + tmp.getText().toString());

  36.        }
  37.    };

  38.     private  void Init() {
  39.         btn0 = (Button) findViewById(R.id.button0);
  40.         btn0.setOnClickListener(listener);
  41.         btn1 = (Button) findViewById(R.id.button1);
  42.         btn1.setOnClickListener(listener);
  43.         btn2 = (Button) findViewById(R.id.button2);
  44.         btn2.setOnClickListener(listener);
  45.         btn3 = (Button) findViewById(R.id.button3);
  46.         btn3.setOnClickListener(listener);
  47.         btn4 = (Button) findViewById(R.id.button4);
  48.         btn4.setOnClickListener(listener);
  49.         btn5 = (Button) findViewById(R.id.button5);
  50.         btn5.setOnClickListener(listener);
  51.         btn6 = (Button) findViewById(R.id.button6);
  52.         btn6.setOnClickListener(listener);
  53.         btn7 = (Button) findViewById(R.id.button7);
  54.         btn7.setOnClickListener(listener);
  55.         btn8 = (Button) findViewById(R.id.button8);
  56.         btn8.setOnClickListener(listener);
  57.         btn9 = (Button) findViewById(R.id.button9);
  58.         btn9.setOnClickListener(listener);
  59.         btn10 = (Button) findViewById(R.id.button10);
  60.         btn10.setOnClickListener(listener);
  61.         btn11 = (Button) findViewById(R.id.button11);
  62.         btn11.setOnClickListener(listener);
  63.         call = (Button) findViewById(R.id.call);
  64.         number = (TextView) findViewById(R.id.Number);
  65.     }

  66.     public void PhoneCall(View view) {
  67.         Intent dial = new Intent();
  68.         dial.setAction("android.intent.action.CALL");
  69.         dial.setData(Uri.parse("tel:"+ number.getText().toString()));
  70.         startActivity(dial);


  71.     }
  72. }
複製代碼
Xml:
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3.     xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
  4.     android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
  5.     android:paddingRight="@dimen/activity_horizontal_margin"
  6.     android:paddingTop="@dimen/activity_vertical_margin"
  7.     android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">

  8.     <TextView
  9.         android:layout_width="wrap_content"
  10.         android:layout_height="wrap_content"
  11.         android:textAppearance="?android:attr/textAppearanceLarge"
  12.         android:text="電話號碼"
  13.         android:id="@+id/textView"
  14.         android:layout_alignParentTop="true"
  15.         android:layout_alignParentStart="true" />

  16.     <TextView
  17.         android:layout_width="wrap_content"
  18.         android:layout_height="wrap_content"
  19.         android:textAppearance="?android:attr/textAppearanceLarge"
  20.         android:id="@+id/Number"
  21.         android:layout_below="@+id/textView"
  22.         android:layout_alignParentStart="true"
  23.         android:layout_alignParentEnd="true"
  24.         android:autoText="false"
  25.         android:textAlignment="center" />

  26.     <Button
  27.         android:layout_width="wrap_content"
  28.         android:layout_height="wrap_content"
  29.         android:text="1"
  30.         android:id="@+id/button1"
  31.         android:layout_below="@+id/Number"
  32.         android:layout_alignParentStart="true"
  33.         android:layout_marginTop="46dp"
  34.         android:layout_alignEnd="@+id/textView" />

  35.     <Button
  36.         android:layout_width="wrap_content"
  37.         android:layout_height="wrap_content"
  38.         android:text="3"
  39.         android:id="@+id/button3"
  40.         android:layout_above="@+id/button5"
  41.         android:layout_alignEnd="@+id/Number" />

  42.     <Button
  43.         android:layout_width="wrap_content"
  44.         android:layout_height="wrap_content"
  45.         android:text="4"
  46.         android:id="@+id/button4"
  47.         android:layout_below="@+id/button1"
  48.         android:layout_alignParentStart="true" />

  49.     <Button
  50.         android:layout_width="wrap_content"
  51.         android:layout_height="wrap_content"
  52.         android:text="2"
  53.         android:id="@+id/button2"
  54.         android:layout_alignTop="@+id/button3"
  55.         android:layout_centerHorizontal="true" />

  56.     <Button
  57.         android:layout_width="wrap_content"
  58.         android:layout_height="wrap_content"
  59.         android:text="5"
  60.         android:id="@+id/button5"
  61.         android:layout_alignTop="@+id/button4"
  62.         android:layout_centerHorizontal="true" />

  63.     <Button
  64.         android:layout_width="wrap_content"
  65.         android:layout_height="wrap_content"
  66.         android:text="6"
  67.         android:id="@+id/button6"
  68.         android:layout_alignTop="@+id/button5"
  69.         android:layout_alignParentEnd="true" />

  70.     <Button
  71.         android:layout_width="wrap_content"
  72.         android:layout_height="wrap_content"
  73.         android:text="7"
  74.         android:id="@+id/button7"
  75.         android:layout_below="@+id/button4"
  76.         android:layout_alignParentStart="true" />

  77.     <Button
  78.         android:layout_width="wrap_content"
  79.         android:layout_height="wrap_content"
  80.         android:text="*"
  81.         android:id="@+id/button10"
  82.         android:layout_below="@+id/button7"
  83.         android:layout_alignParentStart="true" />

  84.     <Button
  85.         android:layout_width="wrap_content"
  86.         android:layout_height="wrap_content"
  87.         android:text="#"
  88.         android:id="@+id/button11"
  89.         android:layout_alignTop="@+id/button0"
  90.         android:layout_alignStart="@+id/button6" />

  91.     <Button
  92.         android:layout_width="wrap_content"
  93.         android:layout_height="wrap_content"
  94.         android:text="撥號"
  95.         android:id="@+id/call"
  96.         android:layout_below="@+id/button10"
  97.         android:layout_alignStart="@+id/button0"
  98.         android:onClick="PhoneCall" />

  99.     <Button
  100.         android:layout_width="wrap_content"
  101.         android:layout_height="wrap_content"
  102.         android:text="0"
  103.         android:id="@+id/button0"
  104.         android:layout_above="@+id/call"
  105.         android:layout_centerHorizontal="true" />

  106.     <Button
  107.         android:layout_width="wrap_content"
  108.         android:layout_height="wrap_content"
  109.         android:text="8"
  110.         android:id="@+id/button8"
  111.         android:layout_above="@+id/button0"
  112.         android:layout_centerHorizontal="true" />

  113.     <Button
  114.         android:layout_width="wrap_content"
  115.         android:layout_height="wrap_content"
  116.         android:text="9"
  117.         android:id="@+id/button9"
  118.         android:layout_above="@+id/button11"
  119.         android:layout_alignStart="@+id/button11" />
  120. </RelativeLayout>
複製代碼

作者: 蔡庭豪    時間: 2018-9-1 12:00

此帖僅作者可見
作者: 蔡季樺    時間: 2018-9-1 13:21

此帖僅作者可見
作者: 洪振庭    時間: 2018-9-1 14:46

此帖僅作者可見
作者: 黃茂勛    時間: 2018-9-1 14:47

此帖僅作者可見
作者: 陳思惟    時間: 2018-9-8 10:11

此帖僅作者可見
作者: 黃璽安    時間: 2018-9-8 10:16

此帖僅作者可見
作者: 李知易    時間: 2018-9-8 10:31

此帖僅作者可見
作者: 張健勳    時間: 2018-9-28 20:36

此帖僅作者可見




歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/) Powered by Discuz! 7.2