1. 程式人生 > >Android 自定義的Dialog,點選確定按鈕,讓其根據條件判斷消失與否

Android 自定義的Dialog,點選確定按鈕,讓其根據條件判斷消失與否

自定義個Dialog,,但是點選確定按鈕的時候,對話方塊會直接消失,這不符合我的需求,我需要在點選確定的時候,判斷是否滿足一定的條件,如果滿足就讓其消失,如果不滿足,給個提示,但是對話方塊不消失,例如自定義的時間選擇控制元件,如果選擇的結束時間小於開始時間,給個提示,但是選擇時間的這個Diolog,不讓其消失。

很簡單,重寫dismiss方法即可。

  @Override
    public void dismiss() {
        if (notcanDis) {
            Toast.makeText(context,"結束時間不能小於開始時間",Toast.LENGTH_SHORT).show();
            notcanDis=false
;//這裡修改為false,是為了還原狀態,為了保證按物理的返回鍵不會出現該提示 } else { super.dismiss(); } }

這個notcanDis這個變數是在點選確定的時候,判斷是否滿足條件來控制其是否為真。

 @Override
    public void onClick(DialogInterface dialog, int which) {
        switch (which) {
            case BUTTON_POSITIVE:
                if (mDateSetListener != null
) { int startYear = start_datePicker.getYear(); int startMoonth = start_datePicker.getMonth(); int startDay = start_datePicker.getDayOfMonth(); int endYear = end_datePicker.getYear(); int endMoonth = end_datePicker.getMonth(); int
endDay = end_datePicker.getDayOfMonth(); Date start = new Date(startYear, startMoonth, startDay); Date end = new Date(endYear, endMoonth, endDay); if (end.getTime() < start.getTime()) { notcanDis = true; } else { notcanDis = false; start_datePicker.clearFocus(); end_datePicker.clearFocus(); mDateSetListener.onDateSet(startYear, startMoonth, startDay, endYear, endMoonth, endDay); } } break; case BUTTON_NEGATIVE: cancel(); break; } }

至此,就實現了我的需求。。。
每日一語錄:
只要路是對的,就不要害怕它是短暫還是遙遠,你終究會到達。。。

相關推薦

Android 定義Dialog確定按鈕根據條件判斷消失與否

自定義個Dialog,,但是點選確定按鈕的時候,對話方塊會直接消失,這不符合我的需求,我需要在點選確定的時候,判斷是否滿足一定的條件,如果滿足就讓其消失,如果不滿足,給個提示,但是對話方塊不消失,例如自定義的時間選擇控制元件,如果選擇的結束時間小於開始時間,給個

android 定義水波紋效果Button

welcome 效果 ; 技術基礎思路 自定義 Button 自定義 Drawable 專案原始碼 自定義button 其實這只是一些說法 自定義button,我們只需要將子類繼承 button public class

Android定義View之效果

最近在做新版本,各種UI效果都需要自定義,而自定義View點選效果問題一直困擾著我。各種找資料也沒有找到自己想要的東西,可能是我關鍵字打的不對吧。最後在檢視TextView的原始碼時解決了我的問題,由於原始碼功能太多,不易查詢,特此提取記錄。 UI效果

android 定義ListView的樣式。

google官方教程 自定義ListView列表項的選中狀態。 注:以下程式碼來自google官方Demo。 我們有個資料展示的需求,需要以ListView形式展示,但是我們需要一個狀態去標識出已選擇或者未選擇,如圖: 可以看到,如果是已選擇狀態,列表

android 定義Toast增加事件、Toast彈出隱藏動畫、Toast寬度為match_parent

在自定義Toast的時候,可能會用到點選事件,但是android系統本身Toast只是用於提示,並不支援點選事件,即使自定義Toast也不支援點選事件,檢視Toast原始碼可以發現,其內部的TN.class(該為私有類,外部調用不了)裡面的WindowManag

【小程式】當前“頁面B”動態更改title返回按鈕更改的標題會顯示在“來源頁面A”

最近在做小程式的時候遇到這麼一個有趣的問題,就是從A頁面跳轉到B頁面,如果B頁面需要在介面載入之後更改title, 並且如果介面請求過慢,還滅有請求完畢時就點選返回按鈕回到A頁面,這時B頁面的請求會繼

Android 定義Dialog 裡面有EditText控制元件關閉輸入法失效的問題

在做一個專案的時候,自定義額了一個Dialog 裡面有取消,儲存按鈕,以及EditText,在輸入法彈出的時候,點選取消按鈕,自定義dialog對話方塊關閉了,但是輸入法始終關閉不了,在網上找了很多方法,都不能很好的解決,輸入法不能關閉的問題。    最好找到的解決辦法是

Android 定義鍵盤 隨機鍵盤(完全定製向上頂佈局按鈕進行隱藏)

     之前上傳的另外一個自定義鍵盤,並沒有實現鍵盤彈出的時候,佈局向上自動調整。(網路上所有的自定義鍵盤都沒有新增自適應的功能,而且佈局沒這麼好看,上一個例子資源連結為:http://download.csdn.net/detail/omayyouhappy/91118

Android定義Dialog對話框(Dialog+Listview+CheckBox)

dia bundle adapter get etl wrap 點擊 所有 技術 先放效果截圖 項目中需要有個Dialog全選對話框,點擊全選全部選中,取消全選全部取消。下午查了些資料,重寫了一下Dialog對話框。把代碼放出來。 public class MainAct

8.0通知欄新增通知渠道定義通知 響應事件

今天寫了下demo 發現通知在8.0後有些改變記錄下這個坑!!!! 通知的程式碼大家在網上一搜一大把,我也不廢話 直接上重點。 點擊發送通知,沒有通知顯示,程式碼如下。 日誌資訊 明明走了這行程式碼卻什麼也沒發生,what? 難道寫錯了?,後來查看了資料下才知道是8

【舉例】Android定義Dialog——做出“確定/取消”的選擇

1、自定義Dialog的介面 <--!dialog_yesorno_for_permission.xml--> <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="

Android 定義Dialog並在Activity中實現按鈕監聽。

實際開發中,經常會用到Dialog,比如退出時候會彈出是否退出,或者還有一些編輯框也會用Dialog實現,效果圖如下: 開發中遇到的問題無非在於如果在Activity中監聽這個Dialog中實現的按鈕,Dialog類如下,在MyDialog這個類中實現了一個LeaveMyDialogLi

Asp.net 2.0定義控制元件(HyperLink後執行事件)[網友問題: DataList裡HyperLink控制元件激發事件在哪定義?]

 (一). 概述         HyperLink預設沒有Click事件,  重寫了一個HyperLink自定義控制元件.         實現原理:          預設Hyperlink是跳到點選請求的頁面, 本HyperLink自定義控制元件最終也是跳轉到請求的頁面, 但期間        執行

Android定義dialog並實現失去焦點activity獲取焦點的功能

前言:由於在專案中需要用到更新顯示動畫的需求,所以想到了dialog,自定義dialog不難,網上教程很多,但是在實現dialog背景透明的需求時,遇到了一點問題,網上的一些方法在我的機器上並沒有實現,只能曲折中找到了另一個方法實現。雖然有點麻煩,但畢竟效果不錯。 此方

Android 定義Dialog文字動態載入效果。

之前在技術問答上面看到一個提問 “載入中…” 後面三個點是動態的,這麼一個效果實現。想來想去,好像沒想到好的處理方式。 嘗試了一下,以一個最笨的方式實現了。先來看一下效果 : 我是通過自定義一個Dialog,載入中的效果,是在Dialog內部實現的

Android定義Dialog炫酷主流的載入對話方塊

前言  最近開發中用到許多對話方塊,之前都是在外面的程式碼中建立AlertDialog並設定自定義佈局實現常見的對話方塊,諸如更新提示等含有取消和刪除兩個按鈕的對話方塊我們可以通過程式碼建立一個AlertDialog並通過它暴露的一系列方法設定我們自定義的佈局

Android 定義dialog,製作圓角背景直角問題

問題:在自定義dialog彈窗時,為了美觀設計帶圓角背景,但是圓角邊框的同時會出現白色直角部分,如果設定的是白色底,會出現一種設定圓角無效的假象。 圖: 圖一,要達到的效果,圖二,突出白色直角部

android 定義dialog的實現方法

listener params .get animator miss nim style wrap 參數 最近一直在做 java 相關的東西, 雖然一直在看 Android 但感覺有點留於理論,總這樣畢竟不行,寫的多不一定懂得多,但要想懂得多就一定要寫的多,於是今天動手寫了

Android 定義Dialog小結

關於自定義佈局的Dialog,總是會遇到各種各樣的問題,作為一個菜鳥,想想還是打算專門開一篇總結自己遇到的各種問題。歡迎大佬們指點 自定義佈局寬度和位置問題 自定義佈局,就是自己自由地設定Dialog的樣式,所以肯定會自己寫一個Layout佈局,並把它加載出來,這才是我們想要的,但是經常會出

【舉例】Android定義Dialog——選擇一個RadioButton

1. 自定義Dialog的介面 <--!dialog_selectserver.xml--> <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://sch