安卓中 自定义的对话框

通过触发一个按钮,显示对话框与人进行交互,可以获取对话框中的信息。

java代码:


package com.example.xuanzuo;


import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {
    private Button qiandao;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		qiandao = (Button) findViewById(R.id.qiandao);
		qiandao.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				LayoutInflater layoutInflater = LayoutInflater.from(MainActivity.this); // 创建视图容器并设置上下文
				final View view = layoutInflater.inflate(R.layout.dialog,null); // 获取list_item布局文件的视图
				new AlertDialog.Builder(MainActivity.this).setTitle("        请输入坐标").setView(view).setPositiveButton("确定", new DialogInterface.OnClickListener() {
					@Override
					public void onClick(DialogInterface dialog, int which) {
						// TODO Auto-generated method stub
						EditText pai = (EditText) view.findViewById(R.id.pai);
						EditText lie = (EditText) view.findViewById(R.id.lie);
						Toast.makeText(MainActivity.this, "您的座位是:"+pai.getText()+"排" + lie.getText()+"列", Toast.LENGTH_SHORT).show();
					}
				}).setNegativeButton("取消", null).show();
			}
		});
	}
}

布局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center"
     >

    <Button 
        android:id="@+id/qiandao"
        android:layout_width="100dip"
        android:layout_height="70dip"
        android:background="#C1C1C1"
        android:text="签到"
        android:textColor="#CD0000"
        />

</RelativeLayout>

按钮做的有些粗糙。。。。

对话框布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical" >
    <LinearLayout 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
    <TextView 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="19sp"
        android:text="   排:"/>
    <EditText 
        android:id="@+id/pai"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"/>
    </LinearLayout>
    <LinearLayout 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        >
        <TextView 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="19sp"
            android:text="   列:"/>
        <EditText 
            android:id="@+id/lie"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"/>
    </LinearLayout>
    

</LinearLayout>

OK,备用

posted @   wojiaohuangyu  阅读(5)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示