最终实现效果是点击一个未保存密码的WIFI信号时,弹出如下Dialog:
1、定义Dialog的布局文件:
<a target=_blank id="L1" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L1" rel="#L1" style="color: rgb(102, 102, 102); text-decoration: none;"> 1</a> <a target=_blank id="L2" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L2" rel="#L2" style="color: rgb(102, 102, 102); text-decoration: none;"> 2</a> <a target=_blank id="L3" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L3" rel="#L3" style="color: rgb(102, 102, 102); text-decoration: none;"> 3</a> <a target=_blank id="L4" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L4" rel="#L4" style="color: rgb(102, 102, 102); text-decoration: none;"> 4</a> <a target=_blank id="L5" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L5" rel="#L5" style="color: rgb(102, 102, 102); text-decoration: none;"> 5</a> <a target=_blank id="L6" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L6" rel="#L6" style="color: rgb(102, 102, 102); text-decoration: none;"> 6</a> <a target=_blank id="L7" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L7" rel="#L7" style="color: rgb(102, 102, 102); text-decoration: none;"> 7</a> <a target=_blank id="L8" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L8" rel="#L8" style="color: rgb(102, 102, 102); text-decoration: none;"> 8</a> <a target=_blank id="L9" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L9" rel="#L9" style="color: rgb(102, 102, 102); text-decoration: none;"> 9</a> <a target=_blank id="L10" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L10" rel="#L10" style="color: rgb(102, 102, 102); text-decoration: none;"> 10</a> <a target=_blank id="L11" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L11" rel="#L11" style="color: rgb(102, 102, 102); text-decoration: none;"> 11</a> <a target=_blank id="L12" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L12" rel="#L12" style="color: rgb(102, 102, 102); text-decoration: none;"> 12</a> <a target=_blank id="L13" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L13" rel="#L13" style="color: rgb(102, 102, 102); text-decoration: none;"> 13</a> <a target=_blank id="L14" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L14" rel="#L14" style="color: rgb(102, 102, 102); text-decoration: none;"> 14</a> <a target=_blank id="L15" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L15" rel="#L15" style="color: rgb(102, 102, 102); text-decoration: none;"> 15</a> <a target=_blank id="L16" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L16" rel="#L16" style="color: rgb(102, 102, 102); text-decoration: none;"> 16</a> <a target=_blank id="L17" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L17" rel="#L17" style="color: rgb(102, 102, 102); text-decoration: none;"> 17</a> <a target=_blank id="L18" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L18" rel="#L18" style="color: rgb(102, 102, 102); text-decoration: none;"> 18</a> <a target=_blank id="L19" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L19" rel="#L19" style="color: rgb(102, 102, 102); text-decoration: none;"> 19</a> <a target=_blank id="L20" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L20" rel="#L20" style="color: rgb(102, 102, 102); text-decoration: none;"> 20</a> <a target=_blank id="L21" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L21" rel="#L21" style="color: rgb(102, 102, 102); text-decoration: none;"> 21</a> <a target=_blank id="L22" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L22" rel="#L22" style="color: rgb(102, 102, 102); text-decoration: none;"> 22</a> <a target=_blank id="L23" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L23" rel="#L23" style="color: rgb(102, 102, 102); text-decoration: none;"> 23</a> <a target=_blank id="L24" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L24" rel="#L24" style="color: rgb(102, 102, 102); text-decoration: none;"> 24</a> <a target=_blank id="L25" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L25" rel="#L25" style="color: rgb(102, 102, 102); text-decoration: none;"> 25</a> <a target=_blank id="L26" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L26" rel="#L26" style="color: rgb(102, 102, 102); text-decoration: none;"> 26</a> <a target=_blank id="L27" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L27" rel="#L27" style="color: rgb(102, 102, 102); text-decoration: none;"> 27</a> <a target=_blank id="L28" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L28" rel="#L28" style="color: rgb(102, 102, 102); text-decoration: none;"> 28</a> <a target=_blank id="L29" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L29" rel="#L29" style="color: rgb(102, 102, 102); text-decoration: none;"> 29</a> <a target=_blank id="L30" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L30" rel="#L30" style="color: rgb(102, 102, 102); text-decoration: none;"> 30</a> <a target=_blank id="L31" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L31" rel="#L31" style="color: rgb(102, 102, 102); text-decoration: none;"> 31</a> <a target=_blank id="L32" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L32" rel="#L32" style="color: rgb(102, 102, 102); text-decoration: none;"> 32</a> <a target=_blank id="L33" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L33" rel="#L33" style="color: rgb(102, 102, 102); text-decoration: none;"> 33</a> <a target=_blank id="L34" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L34" rel="#L34" style="color: rgb(102, 102, 102); text-decoration: none;"> 34</a> |
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal" android:orientation="vertical" style="@style/DialogStyle"> <EditText android:id="@+id/wifiDialogPsw" android:layout_width="match_parent" android:layout_height="wrap_content" android:password="true" android:singleLine="true"/> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_weight="2"> <Button android:id="@+id/wifiDialogCancel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:text="取消" android:layout_weight="1"/> <Button android:id="@+id/wifiDialogCertain" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:text="确定" android:layout_weight="1"/> </LinearLayout> </LinearLayout> |
来自CODE的代码片
WIFI_Dialog.XML
2、定义一个Dialog的子类
<a target=_blank id="L1" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L1" rel="#L1" style="color: rgb(102, 102, 102); text-decoration: none;"> 1</a> <a target=_blank id="L2" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L2" rel="#L2" style="color: rgb(102, 102, 102); text-decoration: none;"> 2</a> <a target=_blank id="L3" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L3" rel="#L3" style="color: rgb(102, 102, 102); text-decoration: none;"> 3</a> <a target=_blank id="L4" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L4" rel="#L4" style="color: rgb(102, 102, 102); text-decoration: none;"> 4</a> <a target=_blank id="L5" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L5" rel="#L5" style="color: rgb(102, 102, 102); text-decoration: none;"> 5</a> <a target=_blank id="L6" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L6" rel="#L6" style="color: rgb(102, 102, 102); text-decoration: none;"> 6</a> <a target=_blank id="L7" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L7" rel="#L7" style="color: rgb(102, 102, 102); text-decoration: none;"> 7</a> <a target=_blank id="L8" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L8" rel="#L8" style="color: rgb(102, 102, 102); text-decoration: none;"> 8</a> <a target=_blank id="L9" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L9" rel="#L9" style="color: rgb(102, 102, 102); text-decoration: none;"> 9</a> <a target=_blank id="L10" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L10" rel="#L10" style="color: rgb(102, 102, 102); text-decoration: none;"> 10</a> <a target=_blank id="L11" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L11" rel="#L11" style="color: rgb(102, 102, 102); text-decoration: none;"> 11</a> <a target=_blank id="L12" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L12" rel="#L12" style="color: rgb(102, 102, 102); text-decoration: none;"> 12</a> <a target=_blank id="L13" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L13" rel="#L13" style="color: rgb(102, 102, 102); text-decoration: none;"> 13</a> <a target=_blank id="L14" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L14" rel="#L14" style="color: rgb(102, 102, 102); text-decoration: none;"> 14</a> <a target=_blank id="L15" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L15" rel="#L15" style="color: rgb(102, 102, 102); text-decoration: none;"> 15</a> <a target=_blank id="L16" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L16" rel="#L16" style="color: rgb(102, 102, 102); text-decoration: none;"> 16</a> <a target=_blank id="L17" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L17" rel="#L17" style="color: rgb(102, 102, 102); text-decoration: none;"> 17</a> <a target=_blank id="L18" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L18" rel="#L18" style="color: rgb(102, 102, 102); text-decoration: none;"> 18</a> <a target=_blank id="L19" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L19" rel="#L19" style="color: rgb(102, 102, 102); text-decoration: none;"> 19</a> <a target=_blank id="L20" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L20" rel="#L20" style="color: rgb(102, 102, 102); text-decoration: none;"> 20</a> <a target=_blank id="L21" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L21" rel="#L21" style="color: rgb(102, 102, 102); text-decoration: none;"> 21</a> <a target=_blank id="L22" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L22" rel="#L22" style="color: rgb(102, 102, 102); text-decoration: none;"> 22</a> <a target=_blank id="L23" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L23" rel="#L23" style="color: rgb(102, 102, 102); text-decoration: none;"> 23</a> <a target=_blank id="L24" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L24" rel="#L24" style="color: rgb(102, 102, 102); text-decoration: none;"> 24</a> <a target=_blank id="L25" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L25" rel="#L25" style="color: rgb(102, 102, 102); text-decoration: none;"> 25</a> <a target=_blank id="L26" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L26" rel="#L26" style="color: rgb(102, 102, 102); text-decoration: none;"> 26</a> <a target=_blank id="L27" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L27" rel="#L27" style="color: rgb(102, 102, 102); text-decoration: none;"> 27</a> <a target=_blank id="L28" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L28" rel="#L28" style="color: rgb(102, 102, 102); text-decoration: none;"> 28</a> <a target=_blank id="L29" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L29" rel="#L29" style="color: rgb(102, 102, 102); text-decoration: none;"> 29</a> <a target=_blank id="L30" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L30" rel="#L30" style="color: rgb(102, 102, 102); text-decoration: none;"> 30</a> <a target=_blank id="L31" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L31" rel="#L31" style="color: rgb(102, 102, 102); text-decoration: none;"> 31</a> <a target=_blank id="L32" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L32" rel="#L32" style="color: rgb(102, 102, 102); text-decoration: none;"> 32</a> <a target=_blank id="L33" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L33" rel="#L33" style="color: rgb(102, 102, 102); text-decoration: none;"> 33</a> <a target=_blank id="L34" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L34" rel="#L34" style="color: rgb(102, 102, 102); text-decoration: none;"> 34</a> <a target=_blank id="L35" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L35" rel="#L35" style="color: rgb(102, 102, 102); text-decoration: none;"> 35</a> <a target=_blank id="L36" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L36" rel="#L36" style="color: rgb(102, 102, 102); text-decoration: none;"> 36</a> <a target=_blank id="L37" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L37" rel="#L37" style="color: rgb(102, 102, 102); text-decoration: none;"> 37</a> <a target=_blank id="L38" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L38" rel="#L38" style="color: rgb(102, 102, 102); text-decoration: none;"> 38</a> <a target=_blank id="L39" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L39" rel="#L39" style="color: rgb(102, 102, 102); text-decoration: none;"> 39</a> <a target=_blank id="L40" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L40" rel="#L40" style="color: rgb(102, 102, 102); text-decoration: none;"> 40</a> <a target=_blank id="L41" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L41" rel="#L41" style="color: rgb(102, 102, 102); text-decoration: none;"> 41</a> <a target=_blank id="L42" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L42" rel="#L42" style="color: rgb(102, 102, 102); text-decoration: none;"> 42</a> <a target=_blank id="L43" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L43" rel="#L43" style="color: rgb(102, 102, 102); text-decoration: none;"> 43</a> <a target=_blank id="L44" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L44" rel="#L44" style="color: rgb(102, 102, 102); text-decoration: none;"> 44</a> <a target=_blank id="L45" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L45" rel="#L45" style="color: rgb(102, 102, 102); text-decoration: none;"> 45</a> <a target=_blank id="L46" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L46" rel="#L46" style="color: rgb(102, 102, 102); text-decoration: none;"> 46</a> <a target=_blank id="L47" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L47" rel="#L47" style="color: rgb(102, 102, 102); text-decoration: none;"> 47</a> <a target=_blank id="L48" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L48" rel="#L48" style="color: rgb(102, 102, 102); text-decoration: none;"> 48</a> <a target=_blank id="L49" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L49" rel="#L49" style="color: rgb(102, 102, 102); text-decoration: none;"> 49</a> <a target=_blank id="L50" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L50" rel="#L50" style="color: rgb(102, 102, 102); text-decoration: none;"> 50</a> <a target=_blank id="L51" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L51" rel="#L51" style="color: rgb(102, 102, 102); text-decoration: none;"> 51</a> <a target=_blank id="L52" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L52" rel="#L52" style="color: rgb(102, 102, 102); text-decoration: none;"> 52</a> <a target=_blank id="L53" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L53" rel="#L53" style="color: rgb(102, 102, 102); text-decoration: none;"> 53</a> <a target=_blank id="L54" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L54" rel="#L54" style="color: rgb(102, 102, 102); text-decoration: none;"> 54</a> <a target=_blank id="L55" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L55" rel="#L55" style="color: rgb(102, 102, 102); text-decoration: none;"> 55</a> <a target=_blank id="L56" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L56" rel="#L56" style="color: rgb(102, 102, 102); text-decoration: none;"> 56</a> <a target=_blank id="L57" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L57" rel="#L57" style="color: rgb(102, 102, 102); text-decoration: none;"> 57</a> <a target=_blank id="L58" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L58" rel="#L58" style="color: rgb(102, 102, 102); text-decoration: none;"> 58</a> <a target=_blank id="L59" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L59" rel="#L59" style="color: rgb(102, 102, 102); text-decoration: none;"> 59</a> <a target=_blank id="L60" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L60" rel="#L60" style="color: rgb(102, 102, 102); text-decoration: none;"> 60</a> |
package com.wifi.utils; import android.app.Dialog; import android.content.Context; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import com.example.controlpcpro.R; public class WifiPswDialog extends Dialog{ private Button cancelButton; private Button okButton; private EditText pswEdit; private OnCustomDialogListener customDialogListener; public WifiPswDialog(Context context,OnCustomDialogListener customListener) { //OnCancelListener cancelListener) { super(context); // TODO Auto-generated constructor stub customDialogListener = customListener; } //定义dialog的回调事件 public interface OnCustomDialogListener{ void back(String str); } @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.wifi_config_dialog); setTitle("请输入密码"); pswEdit = (EditText)findViewById(R.id.wifiDialogPsw); cancelButton = (Button)findViewById(R.id.wifiDialogCancel); okButton = (Button)findViewById(R.id.wifiDialogCertain); cancelButton.setOnClickListener(buttonDialogListener); okButton.setOnClickListener(buttonDialogListener); } private View.OnClickListener buttonDialogListener = new View.OnClickListener() { @Override public void onClick(View view) { // TODO Auto-generated method stub if(view.getId() == R.id.wifiDialogCancel){ pswEdit = null; customDialogListener.back(null); cancel();//自动调用dismiss(); } else{ customDialogListener.back(pswEdit.getText().toString()); dismiss(); } } }; } |
来自CODE的代码片
WifiPswDialog
首先说明下Dialog中两个Button的点击事件的处理
<a target=_blank id="L1" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L1" rel="#L1" style="color: rgb(102, 102, 102); text-decoration: none;"> 1</a> <a target=_blank id="L2" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L2" rel="#L2" style="color: rgb(102, 102, 102); text-decoration: none;"> 2</a> <a target=_blank id="L3" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L3" rel="#L3" style="color: rgb(102, 102, 102); text-decoration: none;"> 3</a> <a target=_blank id="L4" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L4" rel="#L4" style="color: rgb(102, 102, 102); text-decoration: none;"> 4</a> <a target=_blank id="L5" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L5" rel="#L5" style="color: rgb(102, 102, 102); text-decoration: none;"> 5</a> <a target=_blank id="L6" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L6" rel="#L6" style="color: rgb(102, 102, 102); text-decoration: none;"> 6</a> <a target=_blank id="L7" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L7" rel="#L7" style="color: rgb(102, 102, 102); text-decoration: none;"> 7</a> <a target=_blank id="L8" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L8" rel="#L8" style="color: rgb(102, 102, 102); text-decoration: none;"> 8</a> <a target=_blank id="L9" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L9" rel="#L9" style="color: rgb(102, 102, 102); text-decoration: none;"> 9</a> <a target=_blank id="L10" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L10" rel="#L10" style="color: rgb(102, 102, 102); text-decoration: none;"> 10</a> <a target=_blank id="L11" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L11" rel="#L11" style="color: rgb(102, 102, 102); text-decoration: none;"> 11</a> <a target=_blank id="L12" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L12" rel="#L12" style="color: rgb(102, 102, 102); text-decoration: none;"> 12</a> |
public void onClick(View view) { // TODO Auto-generated method stub if(view.getId() == R.id.wifiDialogCancel){ pswEdit = null; customDialogListener.back(null); cancel();//自动调用dismiss(); } else{ customDialogListener.back(pswEdit.getText().toString()); dismiss(); } } |
来自CODE的代码片
click
参考:http://labs.chinamobile.com/groups/10670_27134
对话框关闭时,调用dismiss()方法。点击“取消”时调用cancel()方法,指不再需要执行对话框上的任何功能和动作,取消对话框会自动调用dismiss()方法。
实现从对话框中返回信息,如WIFI密码
Dialog并没有提供可以直接返回数据的方法,我们可以通过创建自己的监听类实现
<a target=_blank id="L1" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L1" rel="#L1" style="color: rgb(102, 102, 102); text-decoration: none;"> 1</a> <a target=_blank id="L2" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L2" rel="#L2" style="color: rgb(102, 102, 102); text-decoration: none;"> 2</a> <a target=_blank id="L3" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L3" rel="#L3" style="color: rgb(102, 102, 102); text-decoration: none;"> 3</a> <a target=_blank id="L4" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L4" rel="#L4" style="color: rgb(102, 102, 102); text-decoration: none;"> 4</a> |
//定义dialog的回调事件 public interface OnCustomDialogListener{ void back(String str); } |
来自CODE的代码片
OnCustomDialogListener
同样Dialog的构造方法也需要改变
<a target=_blank id="L1" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L1" rel="#L1" style="color: rgb(102, 102, 102); text-decoration: none;"> 1</a> <a target=_blank id="L2" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L2" rel="#L2" style="color: rgb(102, 102, 102); text-decoration: none;"> 2</a> <a target=_blank id="L3" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L3" rel="#L3" style="color: rgb(102, 102, 102); text-decoration: none;"> 3</a> <a target=_blank id="L4" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L4" rel="#L4" style="color: rgb(102, 102, 102); text-decoration: none;"> 4</a> <a target=_blank id="L5" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L5" rel="#L5" style="color: rgb(102, 102, 102); text-decoration: none;"> 5</a> <a target=_blank id="L6" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L6" rel="#L6" style="color: rgb(102, 102, 102); text-decoration: none;"> 6</a> |
public WifiPswDialog(Context context,OnCustomDialogListener customListener) { super(context); // TODO Auto-generated constructor stub customDialogListener = customListener; } |
来自CODE的代码片
WifiPswDialog
然后我们需要在创建Dialog时候实现OnCustomDialogListener接口。
Dialog中如何传出数据呢,这是在OnClick方法中传出的。如代码中的语句:
customDialogListener.back(null);
customDialogListener.back(pswEdit.getText().toString());
3、在Acitivity中创建Dialog
<a target=_blank id="L1" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L1" rel="#L1" style="color: rgb(102, 102, 102); text-decoration: none;"> 1</a> <a target=_blank id="L2" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L2" rel="#L2" style="color: rgb(102, 102, 102); text-decoration: none;"> 2</a> <a target=_blank id="L3" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L3" rel="#L3" style="color: rgb(102, 102, 102); text-decoration: none;"> 3</a> <a target=_blank id="L4" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L4" rel="#L4" style="color: rgb(102, 102, 102); text-decoration: none;"> 4</a> <a target=_blank id="L5" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L5" rel="#L5" style="color: rgb(102, 102, 102); text-decoration: none;"> 5</a> <a target=_blank id="L6" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L6" rel="#L6" style="color: rgb(102, 102, 102); text-decoration: none;"> 6</a> <a target=_blank id="L7" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L7" rel="#L7" style="color: rgb(102, 102, 102); text-decoration: none;"> 7</a> <a target=_blank id="L8" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L8" rel="#L8" style="color: rgb(102, 102, 102); text-decoration: none;"> 8</a> <a target=_blank id="L9" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L9" rel="#L9" style="color: rgb(102, 102, 102); text-decoration: none;"> 9</a> <a target=_blank id="L10" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L10" rel="#L10" style="color: rgb(102, 102, 102); text-decoration: none;"> 10</a> <a target=_blank id="L11" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L11" rel="#L11" style="color: rgb(102, 102, 102); text-decoration: none;"> 11</a> <a target=_blank id="L12" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L12" rel="#L12" style="color: rgb(102, 102, 102); text-decoration: none;"> 12</a> <a target=_blank id="L13" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L13" rel="#L13" style="color: rgb(102, 102, 102); text-decoration: none;"> 13</a> <a target=_blank id="L14" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L14" rel="#L14" style="color: rgb(102, 102, 102); text-decoration: none;"> 14</a> <a target=_blank id="L15" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L15" rel="#L15" style="color: rgb(102, 102, 102); text-decoration: none;"> 15</a> <a target=_blank id="L16" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L16" rel="#L16" style="color: rgb(102, 102, 102); text-decoration: none;"> 16</a> <a target=_blank id="L17" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L17" rel="#L17" style="color: rgb(102, 102, 102); text-decoration: none;"> 17</a> <a target=_blank id="L18" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L18" rel="#L18" style="color: rgb(102, 102, 102); text-decoration: none;"> 18</a> <a target=_blank id="L19" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L19" rel="#L19" style="color: rgb(102, 102, 102); text-decoration: none;"> 19</a> <a target=_blank id="L20" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L20" rel="#L20" style="color: rgb(102, 102, 102); text-decoration: none;"> 20</a> <a target=_blank id="L21" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L21" rel="#L21" style="color: rgb(102, 102, 102); text-decoration: none;"> 21</a> <a target=_blank id="L22" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L22" rel="#L22" style="color: rgb(102, 102, 102); text-decoration: none;"> 22</a> <a target=_blank id="L23" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L23" rel="#L23" style="color: rgb(102, 102, 102); text-decoration: none;"> 23</a> <a target=_blank id="L24" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L24" rel="#L24" style="color: rgb(102, 102, 102); text-decoration: none;"> 24</a> <a target=_blank id="L25" href="http://blog.csdn.net/liuhui_8989/article/details/22962649#L25" rel="#L25" style="color: rgb(102, 102, 102); text-decoration: none;"> 25</a> |
WifiPswDialog pswDialog = new WifiPswDialog(ControlPCMainActivity.this,new OnCustomDialogListener() { @Override public void back(String str) { // TODO Auto-generated method stub wifiPassword = str; if(wifiPassword != null){ int netId = localWifiUtils.AddWifiConfig(wifiResultList,wifiItemSSID, wifiPassword); Log.i("WifiPswDialog",String.valueOf(netId)); if(netId != -1){ localWifiUtils.getConfiguration();//添加了配置信息,要重新得到配置信息 if(localWifiUtils.ConnectWifi(netId)){ selectedItem.setBackgroundResource(R.color.green); } } else{ Toast.makeText(ControlPCMainActivity.this, "网络连接错误", Toast.LENGTH_SHORT).show(); selectedItem.setBackgroundResource(R.color.burlywood); } } else{ selectedItem.setBackgroundResource(R.color.burlywood); } } }); pswDialog.show(); |
来自CODE的代码片
snippet_file_0.txt
创建Dialog时最主要的就是对OnCustomDialogListener接口的实现,对back()方法实现,back方法是对话框消失后执行的操作,返回的数据通过back()方法的参数str实现。
创建完成后Dialog的显示只需要通过Dialog.show()方法实现就可以了
project源码:http://download.csdn.net/detail/liuhui_8989/7154671