• android从Dialog对话框中取得文本文字


    android中Dialog对话框获取文本文字,只需要使用editor的getText方法就可以获得,示例如下:
    final EditText et = new EditText(this);
    et.setText(mSharedPreferences.getString("ipadd", "127.0.0.1"));
    //获取ip而已,不用在乎
    new AlertDialog.Builder(this).setTitle("请输入IP地址")
    .setIcon(android.R.drawable.ic_dialog_info).setView(et)
    .setPositiveButton("确定", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface arg0, int arg1) {
    //数据获取
    //Toast.makeText(TestTabActivity.this, et.getText().toString(),
    // Toast.LENGTH_LONG).show();
    mEditor.putString("ipadd", et.getText().toString());
    //关键在这儿,获取输入框的数据,原来很简单!!
    mEditor.commit();
    }
    }).setNegativeButton("取消", null).show();



    1、View注意设置成final类型如final View layout=。。。

    2、获取文本框对象时候格式EditText e = (EditText)layout.findViewById(R.id);//这里记好了那个layout 是上面final View对象

    不注意上面的你就无法获得对话框中的文本了哦!

    private void getWifiInfo() {
    // TODO Auto-generated method stub
    /**
    * 当按返回键时的提示对话框,采用默认样式
    */
    LayoutInflater inflater=getLayoutInflater();
    final View layout=inflater.inflate(R.layout.dialog, (ViewGroup)findViewById(R.id.dialog));

    new AlertDialog.Builder(this).
    setTitle("自定义布局").
    setView(layout).
    setPositiveButton("确定",
    new DialogInterface.OnClickListener(){ 
    @Override 
    public void onClick(DialogInterface dialog, int which) { 
    EditText et1 = (EditText)layout.findViewById(R.id.wifiname);
    EditText et2 =(EditText)layout.findViewById(R.id.wifipassword);
    wifiname = et1.getText().toString();
    wifipassword=et2.getText().toString();
    }})


    .setNegativeButton("取消", null).show();


    }

    实例:

    package com.example.mytest;

    import android.app.AlertDialog;
    import android.content.DialogInterface;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.EditText;

    public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    getdialog();
    }
    private void getdialog(){
    final EditText et=new EditText(this);

    new AlertDialog.Builder(this).setTitle("请输入面积").setView(et).
    setPositiveButton("确定", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface arg0, int arg1){
    String size=et.getText().toString();
    Log.i("size",size);
    }
    }).setNegativeButton("取消",null).show();
    }
    }
  • 相关阅读:
    Java 介绍比较全面的一遍文章
    JSP页面中path和basepath的含义
    myeclipse2014 破解步骤
    word文档去掉复制过来的背景颜色
    String,创建对象问题
    使用Spring框架的好处(转帖)
    myeclipse中将整块的代码所选中的代码左右移动的快捷键
    点击关闭窗口时,弹出提醒的一个事件
    switch能使用的数据类型有6种
    观察者模式(设计模式_15)
  • 原文地址:https://www.cnblogs.com/to-creat/p/5678038.html
Copyright © 2020-2023  润新知