" />

欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android如何添加控件監(jiān)聽器(三種方式)

 更新時(shí)間:2022年06月24日 09:10:41   作者:WAsbry  
本文主要介紹了Android如何添加控件監(jiān)聽器(三種方式),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

本文概述:

  • 本文介紹了,在Android中為控件添加監(jiān)聽的三種常見方式

    • 設(shè)置控件的onClick屬性
    • 采用匿名內(nèi)部類
    • MainActivity 實(shí)現(xiàn) View.OnClickListener 接口

方式一:在布局中添加onClick屬性

  • 編寫思路:

    • 在布局文件中:

      • 指定控件 id
      • 指定控件onClick屬性
    • 在MainActivity中:

      • 在onCreate中拿到控件實(shí)例
      • 在onCreate之外,創(chuàng)建監(jiān)聽方法(方法名與前面設(shè)置的onClick屬性相同)
  • 布局代碼:指定控件的onClick屬性(已經(jīng)被廢棄掉了)

    <Button
        ……
        android:id="@+id/button"
        android:onClick="buttonClick"
        …… />
    
  • Activity代碼:

    public class MainActivity extends AppCompatActivity {
    ?
        private Button button;
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main2);
            //獲取控件示例
            button = findViewById(R.id.button);
        }
    ?
        public void buttonClick(View view) {
           setToast("點(diǎn)擊了button按鈕");
        }
    ?
        public void setToast(String string){
            Toast.makeText(this,string,Toast.LENGTH_SHORT).show();
        }
    }
    
  • 運(yùn)行結(jié)果:可不可以限定Toast的提示位置?比如說(shuō)將Toast放在中間去

方式二:采用匿名內(nèi)部類

  • 編寫思路:

    • 在布局文件中:指定控件 id

    • 在MainActivity中

      • 在onCreate內(nèi):

        • 獲取控件實(shí)例
        • 為控件添加監(jiān)聽(使用匿名內(nèi)部類重寫onClick方法)
  • 布局代碼:此時(shí)不能設(shè)置onClick屬性

    <Button
        ……
        android:id="@+id/button"
        …… />
    
  • Java 代碼

    public class MainActivity extends AppCompatActivity {
    ?
        private Button button;
    ?
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main2);
    ?
            //獲取控件示例
            button = findViewById(R.id.button);
    ?
            //添加監(jiān)聽
            button.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    setToast("點(diǎn)擊了按鈕");
                }
            });
        }
    ?
        public void setToast(String string){
            Toast.makeText(this,string,Toast.LENGTH_SHORT).show();
        }
    }
    
  • 運(yùn)行結(jié)果:

方式三:MainActivity 實(shí)現(xiàn) View.OnClickListener 接口

  • 編寫思路:

    • 在布局文件中:

      • 指定控件 id
    • 在MainActivity聲明處:實(shí)現(xiàn) View.OnClickListener 接口

    • 在MainActivity中:

      • 在onCreate方法內(nèi):

        • 拿到控件實(shí)例
        • 為控件注冊(cè)監(jiān)聽器
      • 在onCreate方法外:重寫onClick方法

  • 布局代碼:

    <Button
        ……
        android:id="@+id/button"
        …… />
    
  • MainActivity 代碼

    public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    ?
        private Button button;
    ?
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main2);
    ?
            //獲取控件示例
            button = findViewById(R.id.button);
            //為控件注冊(cè)監(jiān)聽器
            button.setOnClickListener(this);
        }
    ?
        public void setToast(String string){
            Toast.makeText(this,string,Toast.LENGTH_SHORT).show();
        }
    ?
        @Override
        public void onClick(View view) {
            setToast("按鈕被點(diǎn)擊了");
        }
    }
    
  • 運(yùn)行效果:

到此這篇關(guān)于Android如何添加控件監(jiān)聽器(三種方式)的文章就介紹到這了,更多相關(guān)Android 控件監(jiān)聽器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論