日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

android dialog 点击确定不消失,AlertDialog点击按钮不消失的实现方法

發布時間:2023/12/10 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android dialog 点击确定不消失,AlertDialog点击按钮不消失的实现方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我有一個文本輸入對話框,當我點擊對話框上的“是”按鈕,它會驗證輸入,然后關閉對話框。

但是,如果輸入錯誤,我想停留在同一個對話框中.。

每一次,無論輸入是什么,對話框應該自動關閉,當我點擊“否”按鈕。我怎么才能禁用這個?在網上找了很多,大部分都是修改布局,添加取消確定什么的,這樣并不理想。

現在有個好方案,記錄下來先:

//重寫“確定”(alertdialog.button_positive),截取監聽

dialog.getbutton(alertdialog.button_positive).setonclicklistener(new view.onclicklistener() {

@override

public void onclick(view view) {

toast.maketext(mainactivity.this,"getbutton(alertdialog.button_positive)", toast.length_long).show();

//這里可以控制是否讓對話框消失

dialog.dismiss();

}

});

完整java代碼如下:

package com.github.azhansy.dialognotdismissdemo;

import android.content.dialoginterface;

import android.support.v7.app.alertdialog;

import android.support.v7.app.appcompatactivity;

import android.os.bundle;

import android.view.view;

import android.widget.edittext;

import android.widget.imageview;

import android.widget.toast;

public class mainactivity extends appcompatactivity {

@override

protected void oncreate(bundle savedinstancestate) {

super.oncreate(savedinstancestate);

setcontentview(r.layout.activity_main);

}

//這里隨便在主布局加個監聽事件即可

public void onclicktext(view vv){

alertdialog.builder builder = new alertdialog.builder(this);

builder.settitle("對話框標題");

view view = view.inflate(this, r.layout.dialog_input_link, null);

final edittext linkedt = (edittext) view.findviewbyid(r.id.edt_input_link);

imageview cleariv = (imageview) view.findviewbyid(r.id.iv_clear_link);

builder.setview(view);

cleariv.setonclicklistener(new view.onclicklistener() {

@override

public void onclick(view view) {

linkedt.gettext().clear();

}

});

builder.setpositivebutton(android.r.string.ok, new dialoginterface.onclicklistener() {

@override

public void onclick(dialoginterface dialoginterface, int i) {

toast.maketext(mainactivity.this,"確定", toast.length_long).show();

}

});

builder.setnegativebutton(android.r.string.cancel, new dialoginterface.onclicklistener() {

@override

public void onclick(dialoginterface dialoginterface, int i) {

toast.maketext(mainactivity.this,"取消", toast.length_long).show();

}

});

final alertdialog dialog = builder.create();

dialog.setcanceledontouchoutside(false);

dialog.show();

//重寫“確定”,截取監聽

dialog.getbutton(alertdialog.button_positive).setonclicklistener(new view.onclicklistener() {

@override

public void onclick(view view) {

toast.maketext(mainactivity.this,"getbutton(alertdialog.button_positive)", toast.length_long).show();

//這里可以控制是否讓對話框消失

dialog.dismiss();

}

});

}

}

對話框布局:

xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

android:paddingleft="10dp"

android:paddingright="10dp">

android:layout_width="match_parent"

android:layout_height="wrap_content">

android:id="@+id/edt_input_link"

android:layout_width="match_parent"

android:layout_height="48dp"

android:gravity="center_vertical"

android:maxlines="1"

android:paddingright="30dp"

android:textsize="16sp"

tools:text="fhafafa"/>

android:id="@+id/iv_clear_link"

android:layout_width="30dp"

android:layout_height="30dp"

android:layout_alignparentright="true"

android:layout_centerinparent="true"

android:scaletype="center"

android:src="@drawable/ic_clear"/>

以上所述是小編給大家介紹的alertdialog點擊按鈕不消失的實現方法,希望對大家有所幫助

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的android dialog 点击确定不消失,AlertDialog点击按钮不消失的实现方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。