1. 程式人生 > >Android中同一個button按鈕每次點選響應不同的事件

Android中同一個button按鈕每次點選響應不同的事件

開發中我們經常會遇到當點選一次按鈕後,按鈕上的text顯示改變為其他的,又或者當點選一次按鈕後按鈕變為紅色,當再次點選,又變回原來的顏色。

為了實現這種功能,我們可以為按鈕設定flag來標誌,每點選一次後就修改flag的值,然後通過判斷flag的值來實現不同的功能。

<span style="font-size: 13.5pt;">public class MainActivity extends AppCompatActivity {

    private Button bt;
    private int i = 0;

    @Override
</span><span style="font-size:18px;">    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);</span>
<span style="font-size:18px;">
        bt = (Button) findViewById(R.id.button);</span>
<span style="font-size:18px;"><span style="white-space:pre">	</span>bt.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if(i == 0){
                    bt.setBackgroundResource(R.mipmap.button1);
                    i = 1;
                }else if(i == 1){
                    bt.setBackgroundResource(R.mipmap.button2);
                    i = 0;
                }</span>
<span style="font-size:18px;">//                i = (i + 1)%2;//或者使用這種方式來改變i的值
    }</span>
<span style="font-size:18px;">}</span>

相關推薦

Android同一個button按鈕每次響應不同事件

開發中我們經常會遇到當點選一次按鈕後,按鈕上的text顯示改變為其他的,又或者當點選一次按鈕後按鈕變為紅色,當再次點選,又變回原來的顏色。 為了實現這種功能,我們可以為按鈕設定flag來標誌,每點選一次後就修改flag的值,然後通過判斷flag的值來實現不同的功能。 &l

AndroidButton自定義效果之改變按鈕的顏色

在Android中定義按鈕的點選效果可以通過自定義selector,通過設定兩張不同的背景圖片來改變點選時和未點選時的狀態,但有時候僅僅只想改變點選時按鈕的顏色,但是在selector中並不能直接定義顏色。下面程式碼實現一個點選按鈕時僅僅改變按鈕顏色。 1.

AndroidButton自定義效果

原來聽很多人說Button不能使用自定義的點選或選中效果,所以做下測試 結果顯示Button很強大 完全可以使用這種靈活的方法  方法一 1.放在drawable下的selector.xml檔案 <?xml version="1.0" encoding="utf-8"?

Android在fragment A裡面button跳轉到fragment B實現方法

方法一:直接getActivity,使用activity的fragmenttransation的replace方法替換 假設 class OneFragment extends Fragment{ private Button btn; @Override p

leaflet 在地圖popup彈框新增按鈕響應(vue2leaflet),設定popup的content屬性,新增button

效果如圖,點選【進入】按鈕,彈出alert提示框。當然這裡可以把alert換成其他響應需求。  首先給popup的content新增button: <l-popup :content="profile1-1+ '<br><button id=

Android優雅地處理按鈕重複

以前的處理方式 網上查詢到的,或者你可能會想到的方法大概有這些: 1.每個按鈕點選事件中,記錄點選時間,判斷是否超過點選時間間隔 private long mLastClickTime = 0; public static final long TIME_INTE

AndroidKotlin的學習(事件、跳轉、for迴圈、RecyclerView、回撥)

剛剛學習Kotlin,有什麼不對的地方請見諒。 首先屬性的宣告中有兩個很重要的關鍵字: var  和  val。 例如: var a = "hello" val b = "hello"區別是什麼呢? var可多次分配; val只能一次初始化。 點選事件: xml中View定

Android常用的四種事件

1.匿名內部類的方式 findViewById(R.id.btn_submit).setOnClickListener(new View.OnClickListener() { @Override public

安卓如何給按鈕新增音效

前言 有很多製作精良的APP都自帶點選音效,那麼如何簡單的來實現這一效果,這裡需要使用到的一個概念叫做SoundPool,這個類主要用於播放一些比較小的音訊檔案,因為比較方便,通常用在遊戲裡比較多。 程式碼 閒話不多說,我們現在需要做一個功

解決Button 按鈕時候出現邊框的問題

CSS控制Button 按鈕的點選時候出現藍色邊框 新增css屬性,這樣在點選安按鈕的時候就不會有藍色邊框了 button{ outline:none; } 實對於b

AndroidperformClick方法---程式碼呼叫事件(模擬去觸控控制元件)

最近看到view一個方法performClick,這個方法的作用:使用程式碼主動去呼叫控制元件的點選事件(模擬人手去觸控控制元件) 這個一般很少用的,除非在特殊情況下,比如一開始初始化需要非人為的進行一次點選,但大多數情況我們都能在程式碼中編寫相關邏輯程式碼完成,如果實在辦

Unity3D:NGUI Srollview子物件Button時,不能滾動

      NGUI中使用Scrollview控制元件,通過Gird來新增和管理子項,一般能正常使用。但如果你把Button作為Scrollview子項或者子項中有Button時,你會發現Button可以正常起效,但當點選到Button時Scrollview會無法滾動。去掉

cocos2d-x實現不規則按鈕效果

先說一點,這是從別人那裡扒來的,親測有效覺得不錯,分享一下: 原理很簡單,就是判斷按鈕圖片的點選區域 畫素點透明度是不是0,需要修改原始碼; 我拿cocos2dx 3.10的版本(xcode環境)舉例: 第一步,新建一個cocos專案,找到cocos的原始碼中的Widge

Android小記:ListView按鈕響應事件

在Adapter中定義一個回撥介面,在Activity中實現該介面,從而實現對點選事件的響應。 有兩種方式都能比較好的實現:使用介面回撥和使用抽象類回撥 1.使用介面回撥: Adapter類: package com.ivan.adapter;

記錄Android開發一個小坑,佈局檔案TextView新增onClick後,無效問題

自己寫東西的時候,在TextView上添加了onClick去增加點選事件,去跳轉另一個Activity,執行後結果點選無效,新增Toast,Toast也不顯示,程式碼如下: <TextView android:layout_width="wrap_content"

Activity響應ListView內部按鈕事件

最近交流群裡面有人問到一個問題:如何在Activity中響應ListView內部按鈕的點選事件,不要在Adapter中響應? 對於這個問題,我最初給他的解答是,在Adapter中定義一個回撥介面,在Activity中實現該介面,從而實現對點選事件的響應。 下班後思考了一下,覺得有兩種方式都能

Android按鈕實現事件的幾種方式

此方法整體看上去簡單易懂,個人比較常用 xml佈局 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.

android實現按鈕圓角背景、字型顏色都改變

實現圓角按鈕,點選的時候背景和字型的顏色都改變,這裡的實現效果如下:原狀態背景為白色,字型為藍色,當點選的時候背景為藍色,字型為白色。介紹兩種實現方式。1、使用button。2、實現自定義TextView。 1.使用Button首先在drawable下建一個Button

Android-響應按鈕三種實現方法

一、使用反射方式來實現按鈕的點選 新增一個onButtonClicked方法 public void onButtonClicked(View view) { TextView tex

element通過js觸發按鈕事件

vue: <el-button type="primary" @click="dataDocking2()">批量處理</el-button>(通過總按鈕來觸發下邊表格按鈕的事件) <el-table :data="dataDocki