热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

android弹出新按钮,android 在一个view中弹出一个layout并监听layout中的按钮

LayoutInflaterflaterLayoutInflater.from(this.getContext());Viewviewflater.inflate(R.layout

LayoutInflater flater =

LayoutInflater.from(this.getContext());

View view = flater.inflate(R.layout.number1to9, null);

//设置新建view

AlertDialog.Builder builder = new

AlertDialog.Builder(this.getContext());

builder.setView(view);  //把view介入构造器中

final AlertDialog numDialog = builder.create();

//弹出框形式

numDialog.show();  //把弹出框显示出来

Button[] btnNums = new Button[11];

btnNums[1] = (Button) view.findViewById(R.id.button1);

btnNums[2] = (Button) view.findViewById(R.id.button2);

btnNums[3] = (Button) view.findViewById(R.id.button3);

btnNums[4] = (Button) view.findViewById(R.id.button4);

btnNums[5] = (Button) view.findViewById(R.id.button5);

btnNums[6] = (Button) view.findViewById(R.id.button6);

btnNums[7] = (Button) view.findViewById(R.id.button7);

btnNums[8] = (Button) view.findViewById(R.id.button8);

btnNums[9] = (Button) view.findViewById(R.id.button9);

btnNums[0] = (Button) view.findViewById(R.id.button0);

btnNums[10] = (Button) view.findViewById(R.id.button10);

btnNums[10].setOnClickListener(new OnClickListener() {

//监听弹出框中的按钮

@Override

public void onClick(View arg0) {

numDialog.dismiss();

}

});

for (int p &#61; 0; p <10; p&#43;&#43;) {

final int iBtn &#61; p; // 声明final变量就可以内部类使用

btnNums[iBtn].setOnClickListener(new OnClickListener() {

&#64;Override

public void onClick(View arg0) {

datap[j - 1][i - 1] &#61; iBtn;

for (int i &#61; 1; i <&#61; 9; i&#43;&#43;) {

for (int j &#61; 1; j <&#61; 9; j&#43;&#43;) {

if (datap[j - 1][i - 1] !&#61; num[j - 1][i - 1]) {

final Set setNumsIn9Cell &#61; jugde(

i, j);

Log.i("test", setNumsIn9Cell &#43; "");

if (setNumsIn9Cell

.contains(datap[j - 1][i - 1])) {

datawarn[j - 1][i - 1] &#61; warnCoclor;

} else {

datawarn[j - 1][i - 1] &#61; normCoclor;

}

}

}

}

invalidate();

numDialog.dismiss();

}

});

}

} else {

Toast.makeText(SudoView.this.getContext(), "原始数据不允许修改",

Toast.LENGTH_SHORT).show();

}

x &#61; 0;

y &#61; 0;

}

} // 要想在OntouchEvent里边调用画笔// 重新调用onDraw



推荐阅读
  • 本文详细介绍了Android中的坐标系以及与View相关的方法。首先介绍了Android坐标系和视图坐标系的概念,并通过图示进行了解释。接着提到了View的大小可以超过手机屏幕,并且只有在手机屏幕内才能看到。最后,作者表示将在后续文章中继续探讨与View相关的内容。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
  • android 触屏处理流程,android触摸事件处理流程 ? FOOKWOOD「建议收藏」
    android触屏处理流程,android触摸事件处理流程?FOOKWOOD「建议收藏」最近在工作中,经常需要处理触摸事件,但是有时候会出现一些奇怪的bug,比如有时候会检测不到A ... [详细]
  •  项目地址https:github.comffmydreamWiCar界面做的很难看,美工方面实在不在行。重点是按钮触摸事件的处理,这里搬了RepeatListener项目代码,例 ... [详细]
  • 拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)
    转载请注明明桑AndroidAndroid5.0Loollipop作为Android最重要的版本之一,为我们带来了全新的界面风格和设计语言。看起来很受欢迎࿰ ... [详细]
  • 深入理解CSS中的margin属性及其应用场景
    本文主要介绍了CSS中的margin属性及其应用场景,包括垂直外边距合并、padding的使用时机、行内替换元素与费替换元素的区别、margin的基线、盒子的物理大小、显示大小、逻辑大小等知识点。通过深入理解这些概念,读者可以更好地掌握margin的用法和原理。同时,文中提供了一些相关的文档和规范供读者参考。 ... [详细]
  • 欢乐的票圈重构之旅——RecyclerView的头尾布局增加
    项目重构的Git地址:https:github.comrazerdpFriendCircletreemain-dev项目同步更新的文集:http:www.jianshu.comno ... [详细]
  • 本文介绍了一款名为TimeSelector的Android日期时间选择器,采用了Material Design风格,可以在Android Studio中通过gradle添加依赖来使用,也可以在Eclipse中下载源码使用。文章详细介绍了TimeSelector的构造方法和参数说明,以及如何使用回调函数来处理选取时间后的操作。同时还提供了示例代码和可选的起始时间和结束时间设置。 ... [详细]
  • 带添加按钮的GridView,item的删除事件
    先上图片效果;gridView无数据时显示添加按钮,有数据时,第一格显示添加按钮,后面显示数据:布局文件:addr_manage.xml<?xmlve ... [详细]
  • Android源码中的Builder模式及其作用
    本文主要解释了什么是Builder模式以及其作用,并结合Android源码来分析Builder模式的实现。Builder模式是将产品的设计、表示和构建进行分离,通过引入建造者角色,简化了构建复杂产品的流程,并且使得产品的构建可以灵活适应变化。使用Builder模式可以解决开发者需要关注产品表示和构建步骤的问题,并且当构建流程发生变化时,无需修改代码即可适配新的构建流程。 ... [详细]
  • SmartRefreshLayout自定义头部刷新和底部加载
    1.添加依赖implementation‘com.scwang.smartrefresh:SmartRefreshLayout:1.0.3’implementation‘com.s ... [详细]
  • 详解Android  自定义UI模板设计_由浅入深
    学习安卓已有一些日子,前段时间整理了不少笔记,但是发现笔记不变分享与携带。今天开始整理博客,全当是与大家分享交流与自身学习理解的过程吧。结合最近在做的一个新闻类app及学习中的问题,一点一点整理一下, ... [详细]
  • iOS Swift中如何实现自动登录?
    本文介绍了在iOS Swift中如何实现自动登录的方法,包括使用故事板、SWRevealViewController等技术,以及解决用户注销后重新登录自动跳转到主页的问题。 ... [详细]
author-avatar
淑娇姿荣石文
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有