- 浏览: 273980 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
zwnJava:
谢谢,总算找到了句有应的话
Android监听程序的安装和卸载 -
liangoogle:
就是只让edittext输入这些字符。
EditText 只输入英文和特殊字符 -
huibin147852369:
应该讲解一下!
EditText 只输入英文和特殊字符 -
goingshow:
楼主,是否发现 自定义selector 出来的chekbox ...
Android 自定义CheckBox 样式 -
shadow88:
这个方法是不错,但是如果是由多个组件组合,只有这个获得了焦点, ...
TextView 跑马灯效果
要显示一个dialog,要实现点击dialog上“不再提示”按钮之后,下次启动程序就不会出现此对话框,怎么实现呢:
1下面是一个例子:
主Activity:
package hao.test.mima;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.KeyEvent;
import hao.test.uitil.YyBackUpPreferences;
public class mima extends Activity {
private Preferences pref = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
pref = Preferences.getInstance(this);
//一定要做判断
if (pref.isShowPwdTip()) {
showDialog(0);
}
}
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case 0: {
return new AlertDialog.Builder(mima.this)
.setOnKeyListener(new DialogInterface.OnKeyListener() {
@Override
public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (event.getKeyCode() == KeyEvent.KEYCODE_SEARCH) {
return true;
}
return false;
}
})
.setTitle("实验:")
.setMessage("这是一个测试")
.setPositiveButton("确定",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
removeDialog(0);
}
})
.setNegativeButton("不再显示",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
removeDialog(0);
//在这里记录状态
pref.closeShowPwdTip();
}
})
.setNeutralButton("设置", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
removeDialog(0);
// startSettingActivity();
}
}).create();
}
default: {
return null;
}
}
}
参数class:
package hao.test.uitil;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.preference.PreferenceManager;
public class Preferences {
private static final String KEY_IS_SHOW_PWD_TIP = "KISPT";
private static SharedPreferences sharedPreferences;
private static Context context;
private static Preferences instance;
public static Preferences getInstance(Context c) {
context=c;
if (instance == null) {
instance = new Preferences();
}
return instance;
}
public boolean closeShowPwdTip() {
Editor editor = getEditor();
editor.putBoolean(KEY_IS_SHOW_PWD_TIP, false);
return editor.commit();
}
private Editor getEditor() {
SharedPreferences pref = getSharedPreferences();
return pref.edit();
}
private SharedPreferences getSharedPreferences() {
if (sharedPreferences == null)
sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context);
return sharedPreferences;
}
//判断是否点击了那个“不再显示按钮”,如果按了的话,返回false。
public boolean isShowPwdTip() {
return getSharedPreferences().getBoolean(KEY_IS_SHOW_PWD_TIP, true);
}
}
2下面是在一个文件中的:
package hao.test.mima;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.view.KeyEvent;
public class mima extends Activity {
private static final String KEY_IS_SHOW_PWD_TIP = "KISPT";
private static SharedPreferences sharedPreferences;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 一定要做判断
if (isShowPwdTip()) {
showDialog(0);
}
}
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case 0: {
return new AlertDialog.Builder(mima.this)
.setOnKeyListener(new DialogInterface.OnKeyListener() {
@Override
public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) {
if (event.getKeyCode() == KeyEvent.KEYCODE_SEARCH) {
return true;
}
return false;
}
}).setTitle("实验:").setMessage("这是一个测试")
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
removeDialog(0);
}
}).setNegativeButton("不再显示", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
removeDialog(0);
// 在这里记录状态
closeShowPwdTip();
}
}).setNeutralButton("设置", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
removeDialog(0);
// startSettingActivity();
}
}).create();
}
default: {
return null;
}
}
}
public boolean closeShowPwdTip() {
if (sharedPreferences == null)
sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
Editor editor = sharedPreferences.edit();
editor.putBoolean(KEY_IS_SHOW_PWD_TIP, false);
return editor.commit();
}
public boolean isShowPwdTip() {
if (sharedPreferences == null)
sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
return sharedPreferences.getBoolean(KEY_IS_SHOW_PWD_TIP, true);
}
}
发表评论
-
关于tableactivity 中activitygroup 使用spinner 控件报错
2012-01-14 11:05 1295这个就和显示dialog一样的道理,都要使用父类显示: 解决 ... -
创建Dialog
2011-07-12 09:37 837Android学习笔记--创建Dial ... -
自定义dialog样式 简单填充
2011-07-11 15:13 1522在做项目时要用dialog,dialog不想用alertdia ... -
调用progressbar 的方法:
2011-06-27 13:55 1214使用和取消时调用下面的两个方法 priva ... -
alertdialog——setview 的 自定义view
2011-06-23 17:32 9191我在做一个alertdialog时出错,关于自定义view, ... -
dialog 2(一步建立对话框,全)
2011-06-17 16:56 682new AlertDialog.Builder(YyBa ... -
Android设置横屏显示
2011-06-17 14:09 1351android:screenOrientation=& ... -
android ProgressDialog 延迟几秒再消失
2011-06-16 14:23 5892显示一个ProgressDialog,然后在线程中取消 ... -
如何让不让AlertDialog dismissed by google search
2011-06-13 14:21 1059google search 键可以导致dialog ... -
打开程序在activity上出现一个AlertDialog
2011-06-08 17:18 1401只要把 showDialog(0); 写在oncreat里, ... -
AlertDialog之2 onCreateDialog
2011-06-08 17:11 1822重写: @Override prot ... -
AlertDialog
2011-06-08 16:45 961new AlertDia ... -
menuDialog
2011-05-20 17:29 881menuDialog = new AlertDialog.Bu ...
相关推荐
4.15 弹出对话框——DialogBox 4.16 修饰面板——DecoratorPanel 4.17 自然布局面板——FlowPanel 4.18 水平布面板——HorizontalPanel 4.19 垂直布局面板——VerticalPanel 4.20 绝对定位面板——AbsolutePanel ...
说明文档:制作类似windows画笔的程序 功能: 文件—— 新建 打开 保存 另存为 页面设置——画布大小变化 退出 ... 通用对话框控件, 位于“Microsoft CommonDialog Control 6.0” 中
9.7.3 Dialog和FileDialog组件的基本知识 9.8 小结 第10章 计算器(布局管理器) 10.1 计算器原理 10.1.1 项目结构框架分析 10.1.2 项目功能业务分析 10.2 计算器的实现过程 10.3 知识点扩展——事件机制的高级知识 ...
它的消息容器甚至能够根据宽度让文本居中或居左对齐——这一切全是XHTML+CSS原生实现。 完善的接口 它的接口完善,可以轻易与外部程序配合使用。如异步写入消息、控制位置、尺寸、显示与隐藏、关闭等。 细致的体验 ...
左侧出现了「计算机配置——管理模板(——「经典管理模板(ADM)」)——Google——Google Chrome」的目录。4. 进入子目录「扩展程序」,双击「配置扩展程序、应用和用户脚本安装源」开始修改配置。5. 在出现的窗口中...
|--android 挪动dialog的位置 |--android 控制对话框位置 |--android 根据uri获取路径 |--android 模拟器错误 |--android 横竖屏切换 |--android 获取mac地址 |--android 获取sd卡状态 |--android 设置apn |--...
CWinApp::InitApplication CMyWinApp::InitInstance CFrameWnd::Create产生主窗口(并先注册窗口类) 奇怪的窗口类名称Afx:b:14ae:6:3e8f 窗口显示与更新 CWinApp::Run——程序生命的活水源头 把消息与...
Dialog Templates和Dialog classes Macros Directives 动手修改Top Studio AppWizard 利用资源编辑器修改IDD_CUSTOM1对话框画面 利用ClassWizard修改IDD_CUSTOM1对话框的对应类CCustomlDlg 改写OnDismiss虚拟函数,...
Dialog Templates和Dialog classes Macros Directives 动手修改Top Studio AppWizard 利用资源编辑器修改IDD_CUSTOM1对话框画面 利用ClassWizard修改IDD_CUSTOM1对话框的对应类CCustomlDlg 改写OnDismiss虚拟函数,...
很容易地添加项目——比如Cmd+Enter就可以打开一个dialog然后填入task后自动加入到相应框中 task肯定会很多,需要只显示其中一部分,自己可以定义 如果定义显示出来的不多,那么最好可以用透明度来控制其他的显示...
否则——显示,并且置为焦点窗口 - 拖入url ——oexe 新窗口打开 - 选中文件时,移动到屏幕可视区域(解决上下左右选中文件滚动条不一致问题) ###ver2.51 `2014/6/22` ---- ####fix bug:(bug解决和程序优化) -...
程序运行或停止——三种状态下工具条的显示 1.1.2 the toolbar; FLAC3D5全文共130页,当前为第10页。 1.1.3 the menus FLAC3D5全文共130页,当前为第11页。 Options Dialog: General: Destroy Button, System Title...
源码dialogplus,一个简单容易使用的对话框——DialogPlus,也可以显示在上 中 下三个位置。Dialogplus也是一个简单的Android dialog对话框控件,用于替代使用dialog/fragments做为对话框显示的普通视图。 ...
如果读者需要使用光盘中的源代码,请将相关目录及其包含的内容复制到您的硬盘上,并修改对应的硬盘目录属性——取消目录及其所包含子目录和文件的“只读”属性。否则,打开VC项目时由于无法进行文件的“写”操作,会...
用于弹出ModalDialog进行数据选择的控件 使用.ashx文件处理IHttpHandler实现发送文本及二进制数据的方法 制作一个简单的多页Tab功能 一完美的关于请求的目录不存在而需要url重写的解决方案! 在C#中实现MSN消息框的...
如果读者需要使用光盘中的源代码,请将相关目录及其包含的内容复制到您的硬盘上,并修改对应的硬盘目录属性——取消目录及其所包含子目录和文件的“只读”属性。否则,打开VC项目时由于无法进行文件的“写”操作,...