- 浏览: 5831524 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (890)
- WindowsPhone (0)
- android (88)
- android快速迭代 (17)
- android基础 (34)
- android进阶 (172)
- android高级 (0)
- android拾遗 (85)
- android动画&效果 (68)
- Material Design (13)
- LUA (5)
- j2me (32)
- jQuery (39)
- spring (26)
- hibernate (20)
- struts (26)
- tomcat (9)
- javascript+css+html (62)
- jsp+servlet+javabean (14)
- java (37)
- velocity+FCKeditor (13)
- linux+批处理 (9)
- mysql (19)
- MyEclipse (9)
- ajax (7)
- wap (8)
- j2ee+apache (24)
- 其他 (13)
- phonegap (35)
最新评论
-
Memories_NC:
本地lua脚本终于执行成功了,虽然不是通过redis
java中调用lua脚本语言1 -
ZHOU452840622:
大神://处理返回的接收状态 这个好像没有监听到 遇 ...
android 发送短信的两种方式 -
PXY:
拦截部分地址,怎么写的for(int i=0;i<lis ...
判断是否登录的拦截器SessionFilter -
maotou1988:
Android控件之带清空按钮(功能)的AutoComplet ...
自定义AutoCompleteTextView -
yangmaolinpl:
希望有表例子更好。。。,不过也看明白了。
浅谈onInterceptTouchEvent、onTouchEvent与onTouch
下面的menu没有意义,仅仅是个练习而已,看图先:
布局:
view:
布局:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:id="@+id/textViewName" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/name" android:textSize="20dp" /> <EditText android:id="@+id/editTextName" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/textViewAge" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/age" android:textSize="20dp" /> <EditText android:id="@+id/editTextAge" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>
view:
package com.dc.app; import java.util.Calendar; import android.app.Activity; import android.app.AlertDialog; import android.app.DatePickerDialog; import android.app.Dialog; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.app.ProgressDialog; import android.app.TimePickerDialog; import android.content.DialogInterface; import android.graphics.Color; import android.os.Bundle; import android.util.Log; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.DatePicker; import android.widget.EditText; import android.widget.TextView; import android.widget.TimePicker; import android.widget.Toast; public class AppActivity extends Activity { private static final String TAG="AppActivity"; private TextView textViewName,textViewAge; private EditText editTextName,editTextAge; private final int menuIdRegiste=1; private final int menuIdBack=2; private final int menuIdLogin=3; private final int menuIdDate=4; private final int menuIdTime=5; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Log.v(TAG,"start"); textViewName=(TextView)this.findViewById(R.id.textViewName); textViewName.setTextColor(Color.BLUE); textViewName.setBackgroundColor(Color.WHITE); editTextName=(EditText)this.findViewById(R.id.editTextName); textViewAge=(TextView)this.findViewById(R.id.textViewAge); textViewAge.setTextColor(Color.BLUE); textViewAge.setBackgroundColor(Color.WHITE); editTextAge=(EditText)this.findViewById(R.id.editTextAge); } public boolean onCreateOptionsMenu(Menu menu) {//初始化Menu菜单选择项 super.onCreateOptionsMenu(menu); //添加菜单项,比如: menu.add(0, menuIdRegiste, 0, R.string.registe).setShortcut('1', 'r');//设置快捷键 menu.add(0, menuIdBack, 0, R.string.back).setShortcut('2', 'b');//设置快捷键 menu.add(0, menuIdLogin, 0, R.string.login).setShortcut('3', 'l');//设置快捷键 menu.add(0, menuIdDate, 0, R.string.date).setShortcut('4', 'd');//设置快捷键 menu.add(0, menuIdTime, 0, R.string.time).setShortcut('5', 't');//设置快捷键 //添加其他菜单项。。。。。。 return true; } public boolean onPrepareOptionsMenu(Menu menu) {// super.onPrepareOptionsMenu(menu); //这里可以事先设置菜单的可见性,如果都可见,可以不设置 menu.findItem(menuIdRegiste).setVisible(true).setIcon(android.R.drawable.ic_menu_add);//设置菜单项可见性 menu.findItem(menuIdBack).setVisible(true).setIcon(android.R.drawable.ic_menu_save);//设置菜单项可见性 menu.findItem(menuIdLogin).setVisible(true).setIcon(android.R.drawable.ic_menu_camera);//设置菜单项可见性 menu.findItem(menuIdDate).setVisible(true).setIcon(android.R.drawable.ic_menu_compass);//设置菜单项可见性 menu.findItem(menuIdTime).setVisible(true).setIcon(R.drawable.icon);//设置菜单项可见性 return true; } public boolean onOptionsItemSelected(MenuItem item) {//选择了一个菜单项的时候调用 //这里可以预先处理想要的变量 switch (item.getItemId()) { case menuIdRegiste://一项一项的处理想要做的,不用我介绍了吧 Toast.makeText(this, R.string.menuIdRegisteContent, Toast.LENGTH_LONG).show(); showDialog(DIALOG_KEY); return true; case menuIdBack: Toast.makeText(this, R.string.menuIdBackContent, Toast.LENGTH_LONG).show(); showNotify(); return true; case menuIdLogin: showDialog(DIALOG_LOGIN); return true; case menuIdDate: showDialog(DIALOG_DATE); return true; case menuIdTime: showDialog(DIALOG_TIME); return true; } return super.onOptionsItemSelected(item); } private static final int DIALOG_KEY = 0; private static final int DIALOG_LOGIN = 3; private static final int DIALOG_DATE = 4; private static final int DIALOG_TIME = 5; @Override protected Dialog onCreateDialog(int id) { switch (id) { case DIALOG_KEY: ProgressDialog progressDialog = new ProgressDialog(this); progressDialog.setTitle("通讯录"); progressDialog.setMessage("获取通讯录中...请稍候"); progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); progressDialog.setIndeterminate(true);//不明确 progressDialog.setCancelable(true);//是否可以按退回按键取消 progressDialog.setButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub dialog.cancel(); // removeDialog(DIALOG_KEY); } }); progressDialog.setCanceledOnTouchOutside(true); return progressDialog; case DIALOG_LOGIN: View dialogview=LayoutInflater.from(this).inflate(R.layout.main, null); Dialog loginDialog=new AlertDialog.Builder(this) .setTitle("登录") .setView(dialogview)//this.findViewById(R.layout.main),不可以,why? .setCancelable(true) .setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub dialog.cancel(); } }) .setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub dialog.cancel(); } }) .create(); loginDialog.setCanceledOnTouchOutside(true); return loginDialog; case DIALOG_DATE: Calendar c = Calendar.getInstance(); DatePickerDialog dateDialog=new DatePickerDialog(this,new DatePickerDialog.OnDateSetListener(){ @Override public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { // TODO Auto-generated method stub showDialog(DIALOG_KEY); } },c.get(Calendar.YEAR), c.get(Calendar.MONTH), c.get(Calendar.DATE)); return dateDialog; case DIALOG_TIME: Calendar c2 = Calendar.getInstance(); TimePickerDialog timeDialog=new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() { @Override public void onTimeSet(TimePicker view, int hourOfDay, int minute) { showDialog(DIALOG_KEY); } }, c2.get(Calendar.HOUR), c2.get(Calendar.MINUTE), true); return timeDialog; } return null; } private void showNotify(){ Notification notice=new Notification(); notice.icon=R.drawable.icon; notice.tickerText="您有一条新的信息"; notice.defaults=Notification.DEFAULT_SOUND; notice.when=10L; // 100 毫秒延迟后,震动 250 毫秒,暂停 100 毫秒后,再震动 500 毫秒 // notice.vibrate = new long[] { 100, 250, 100, 500 }; notice.setLatestEventInfo(this, "通知", "开会啦", PendingIntent.getActivity(this, 0, null, 0)); NotificationManager manager=(NotificationManager)getSystemService(this.NOTIFICATION_SERVICE); manager.notify(0,notice); } }
发表评论
-
http://www.android-studio.org/
2018-08-06 09:25 0http://www.android-studio.org/ ... -
SlidingDrawer源码
2012-03-14 10:13 3814我把SlidingDrawer源码提了出来,希望对1.5的朋友 ... -
简单拖动效果(带Cache,需要完善)
2011-10-13 15:10 4235如何去实现一个具有幻象的拖拽效果? 所谓”幻象“就是当你按下去 ... -
Android Activity中启动另一应用程序的方法,无需得到类名
2011-08-02 14:46 17276在网上搜索了一会相关的实现代码,发现所有的文章都说是需要包名和 ... -
java-universal-tween-engine,一个动画系统库
2011-06-29 09:21 6752http://code.google.com/p/java-u ... -
网上发现的一个android UI包
2011-05-24 12:21 4137里面有些UI和效果 -
android中使用代码启动其他程序
2011-04-29 23:15 5318你要訪問其他的程序,那麼這個程序要先裝載到模擬器或真機上面,因 ... -
listView背景问题以及限制editText字数以及如果想通知别人已经不能在写
2011-04-29 22:44 32171.在listView设置好背景之后 你如果点击空白出 你会发 ... -
Android键盘和触摸事件处理
2011-04-29 22:32 7012activity和VIEW都能接收触摸和按键,如果响应事件只需 ... -
Android的绘制文本对象FontMetrics的介绍及绘制文本
2011-04-29 22:29 11504一。Android绘制文本对象FontMetrics介绍 ... -
Android View 拖动&插入
2011-04-29 22:20 3554View 拖动&插入 即: 支持 拖动图标 然后 ... -
使TextView文本可以水平和垂直滚动
2011-04-29 21:59 14441在做一个小的电子书程序,要求电子书具有放大缩小的功能,所以肯定 ... -
ArrayAdapter源码
2011-04-29 12:29 6311看看人家怎么写的。 /* * Copyright (C ... -
Android下获取开机时间
2011-04-02 21:51 6239找了一圈没发现能得到开机启动时间资料,于是乎突发奇想,得到了解 ... -
AutoCompleteTextView连接到数据库
2011-03-30 20:49 4740AutoCompleteTextView可以根据输入 ... -
改变屏幕Brightness(亮度)
2011-03-30 12:48 4610http://www.eoeandroid.com/forum ... -
android 拖拽图片&拖动浮动按钮到处跑
2011-02-24 20:55 31786来自老外: import android.app.Acti ... -
拖动一个控件在另一个控件(layout)上,并固定位置在几个位置显示
2011-02-24 20:51 5903实现效果: 鼠标拖动btn SSS,SSS在水平的layo ... -
Handler与Message类,实现n秒后无操作自动消失功能
2011-02-24 20:45 4652实现功能:某控件不操作10秒后,自动消失。如照相机变焦条出现后 ... -
带删除按钮的ListView
2011-02-24 10:33 6158不用说了,上图先: import java.util.A ...
相关推荐
在"Dialog&ToastTest"项目中,你可能会发现各种`Dialog`和`Toast`的使用示例,包括如何改变其背景、字体、颜色、按钮等属性,以及如何处理点击事件。通过这些实例,你可以了解到如何根据实际需求灵活运用`Dialog`和`...
"自动更新:Dialog和Notification"这一主题涉及到如何优雅地提示用户进行应用更新,通常通过两种常见的方式:对话框(Dialog)和通知(Notification)。这两种方法各有特点,适用于不同的场景。 首先,让我们详细...
在"ListView&Spinner&Dialog练习"中,ListView被用来展示数据列表,例如成绩列表。它通常与Adapter配合使用,Adapter是连接数据源(如数组或数据库)和ListView的桥梁。在这个小练习中,你可能会看到一个自定义的...
通知(Notification)、对话框(Dialog)、吐司(Toast)和Snackbar是Android系统提供的一些关键组件,用于向用户展示各种信息和提示。下面将详细介绍这些组件的功能、用法以及它们在不同场景下的适用性。 **1. ...
"自画Menu Dialog"是一个项目,旨在通过自定义一个类来重新实现Dialog中的Menu功能,以便控制字体、颜色等视觉样式。这个项目涉及到几个关键的技术点,包括CMenu类的使用、菜单项的绘制以及对话框的定制。 首先,...
《jQuery UI Dialog 修改版:支持可关闭性控制详解》 jQuery UI 是一个强大的JavaScript库,提供了许多用户界面组件,其中包括Dialog(对话框)模块。Dialog组件可以用来创建模态或非模态的弹出窗口,常用于显示...
dialog> <show class="CEffDlgLight" Way="Light" Slow_Level="14"/> <exit class="CEffDlgLight" Way="Dark" Slow_Level="18"/> &...
本文将深入探讨`Notification`的实现,并结合自定义`Dialog`消息展示来增强用户体验。 首先,`Notification`是Android应用程序与用户交互的重要方式,特别是在后台运行时。当应用程序需要告知用户一些信息,但不...
在标题“自定义Dialog实现Menu菜单”中,我们主要探讨的是如何模仿酷狗和淘宝应用中的Menu样式,创建一个具有类似效果的自定义Dialog。Menu通常用于展示一组可选操作,而Dialog则是一个浮动窗口,可以更好地吸引用户...
本篇文章将详细讲解Android中的主要组件,包括`Dialog&Notification`、`WebKit`、`Menu`和`Theme`等。 **1. Dialog&Notification** 对话框(Dialog)在Android中用于显示临时信息或获取用户输入,它不会占据整个...
后来转换成了PDF,便于阅读吧,一共有28个PDF文件,每个文件是一章,内容涉及Android 介绍、Android应用程序基储Activity、SQLite、Webkit、Hardware、Localization、Socket、Audio&Video、Dialog&Notification、...
在Android开发中,自定义Dialog和Dialog加载动画是提升应用用户体验的重要手段。默认的Dialog样式虽然功能齐全,但在追求个性化和美观的今天,往往显得过于简单甚至有些过时。因此,开发者常常需要根据应用的设计...
Notification分为多种类型,包括Toast、StatusBar Notification和Dialog Notification,每种都有其特定的使用场景。 1. Toast Notification: Toast是一种短暂的通知方式,它在屏幕上显示一段时间后自动消失,不会...
对话框通知是一种可以与用户进行交互的通知形式,会使当前的活动失焦。 AlertDialog(警告对话框) 用于创建警告对话框。一个警告对话框最多可以包含三个按钮(和/或)一个包含复选框或单选按钮的可选项列表。...
各种android弹出dialog效果以及各种dialog样式各种android弹出dialog效果以及各种dialog样式各种android弹出dialog效果以及各种dialog样式各种android弹出dialog效果以及各种dialog样式各种android弹出dialog效果...
在Android应用开发中,OptionsMenu是显示在屏幕顶部或者在动作栏(Action Bar)中的一个菜单,通常包含一些常用的操作选项。下面将详细介绍如何在Android中创建OptionsMenu,包括使用XML配置和直接通过代码创建两种...
《jQuery Dialog 深度解析与实践应用》 在Web开发领域,jQuery Dialog是一款非常流行的JavaScript库,用于创建可交互的对话框。它基于jQuery框架,提供了丰富的功能和灵活的定制选项,使得开发者能够轻松地在网页上...
在Android应用开发中,Dialog是一种重要的用户交互组件,它用于显示临时信息或提示用户进行选择。系统提供的默认Dialog样式虽然实用,但往往无法满足开发者对于界面个性化和用户体验优化的需求。因此,自定义Dialog...
6. **Menu**:通过Menu Painter可以定义菜单栏上的选项,以及这些选项对应的处理逻辑。 7. **Subroutines**:自定义的子程序,可以用于复用代码。 8. **其他组件**:还包括Title、Variant等辅助性组件,用于定义...