- 浏览: 128772 次
- 性别:
- 来自: 南京
最新评论
-
cenyi2012:
来个图文并茂不是更好。。。
TabHost两种实现方式 -
youlingxifeng:
谢谢了,很受用,你有没有遇到过这样的问题啊build/core ...
Android源码编译全过程 -
flower_is:
不错不错!
Android的selector,背景选择器 -
yang668:
很好 真心的谢谢
反编译apk -
windloverain:
编译2.3的代码需要用1.6的sdk
另外,安装完java s ...
Android源码编译全过程
LookupActivity是Android-SDK中的一个sample.
一、onNewIntent(Intent intent)方法
该方法是activity的一个保护类型的方法,利用已有的Acivity去处理别的Intent时,你就可以利用onNewIntent来处理,通常被用在有搜索请求的activity,而其该activity有好几个intent-filter,该方法被调用的前提
a、该activity设置如下属性 android:launchMode="singleTop"。
b、该activity已经处在栈的顶端,通过其他的方法又重新启动该acitvity时被调用,如搜索,这时oncreate()方法不调用。
在这个例子中onNewIntent(Intent intent) 用来处理所有的Intent,在oncreate()方法中也认为调用了onNewIntent(getIntent());
二、URI数据匹配
一个 Intent 可以通过 URI 携带外部数据给目标组件。在 <intent-filter >节点中,通过 <data/>节点匹配外部数据。
mimeType 属性指定携带外部数据的数据类型,scheme 指定协议,host、port、path 指定数据的位置、端口、和路径。如下:
<data android:mimeType="mimeType" android:scheme="scheme"
android:host="host" android:port="port" android:path="path"/>
如果在 Intent Filter 中指定了这些属性,那么只有所有的属性都匹配成功时 URI 数据匹配才会成功。
该例子中通过String.format("<a href=\"%s://%s/$1\">$1</a>", WIKI_AUTHORITY, WIKI_LOOKUP_HOST)));把链接格式化成<a href="wiktionary://lookup/ah">ah</a>形式的,
这样就可以和配置文件中的data相匹配
三、用<menu>标签创建菜单,在res/menu/目录下
四、用布局文件填充AlerDialog
五、用OnKeyDown事件控制返回键点击的频率,如果连击短于0.5秒,就返回桌面
六、AsyncTask抽象类的使用
参考http://www.youcanmobile.cn/bbs/viewthread.php?tid=54&extra=page%3D1
七、在strings.xml中定义数组
在java中代码中调用:context.getResources().getStringArray(R.array.month_names)
八、点击桌面上的widget时,弹出activity
一、onNewIntent(Intent intent)方法
该方法是activity的一个保护类型的方法,利用已有的Acivity去处理别的Intent时,你就可以利用onNewIntent来处理,通常被用在有搜索请求的activity,而其该activity有好几个intent-filter,该方法被调用的前提
a、该activity设置如下属性 android:launchMode="singleTop"。
b、该activity已经处在栈的顶端,通过其他的方法又重新启动该acitvity时被调用,如搜索,这时oncreate()方法不调用。
在这个例子中onNewIntent(Intent intent) 用来处理所有的Intent,在oncreate()方法中也认为调用了onNewIntent(getIntent());
public void onNewIntent(Intent intent) { final String action = intent.getAction(); if (Intent.ACTION_SEARCH.equals(action)) { // Start query for incoming search request String query = intent.getStringExtra(SearchManager.QUERY); startNavigating(query, true); } else if (Intent.ACTION_VIEW.equals(action)) { // Treat as internal link only if valid Uri and host matches Uri data = intent.getData(); if (data != null && ExtendedWikiHelper.WIKI_LOOKUP_HOST .equals(data.getHost())) { String query = data.getPathSegments().get(0); startNavigating(query, true); } } else { // If not recognized, then start showing random word startNavigating(null, true); } }
二、URI数据匹配
一个 Intent 可以通过 URI 携带外部数据给目标组件。在 <intent-filter >节点中,通过 <data/>节点匹配外部数据。
mimeType 属性指定携带外部数据的数据类型,scheme 指定协议,host、port、path 指定数据的位置、端口、和路径。如下:
<data android:mimeType="mimeType" android:scheme="scheme"
android:host="host" android:port="port" android:path="path"/>
如果在 Intent Filter 中指定了这些属性,那么只有所有的属性都匹配成功时 URI 数据匹配才会成功。
该例子中通过String.format("<a href=\"%s://%s/$1\">$1</a>", WIKI_AUTHORITY, WIKI_LOOKUP_HOST)));把链接格式化成<a href="wiktionary://lookup/ah">ah</a>形式的,
这样就可以和配置文件中的data相匹配
三、用<menu>标签创建菜单,在res/menu/目录下
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/lookup_search" android:title="@string/lookup_search" android:icon="@android:drawable/ic_menu_search" /> <item android:id="@+id/lookup_random" android:title="@string/lookup_random" android:icon="@drawable/ic_menu_shuffle" /> <item android:id="@+id/lookup_about" android:title="@string/lookup_about" android:icon="@android:drawable/ic_menu_help" /> </menu> public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.lookup, menu); return true; }
四、用布局文件填充AlerDialog
protected void showAbout() { // Inflate the about message contents View messageView = getLayoutInflater().inflate(R.layout.about, null, false); // When linking text, force to always use default color. This works // around a pressed color state bug. TextView textView = (TextView) messageView.findViewById(R.id.about_credits); int defaultColor = textView.getTextColors().getDefaultColor(); textView.setTextColor(defaultColor); AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setIcon(R.drawable.app_icon); builder.setTitle(R.string.app_name); builder.setView(messageView); builder.create(); builder.show(); }
五、用OnKeyDown事件控制返回键点击的频率,如果连击短于0.5秒,就返回桌面
private long mLastPress = -1; public boolean onKeyDown(int keyCode, KeyEvent event) { // Handle back key as long we have a history stack if (keyCode == KeyEvent.KEYCODE_BACK && !mHistory.empty()) { // Compare against last pressed time, and if user hit multiple times // in quick succession, we should consider bailing out early. long currentPress = SystemClock.uptimeMillis(); if (currentPress - mLastPress < DateUtils.SECOND_IN_MILLIS / 2) { return super.onKeyDown(keyCode, event); } mLastPress = currentPress; // Pop last entry off stack and start loading String lastEntry = mHistory.pop(); startNavigating(lastEntry, false); return true; } // Otherwise fall through to parent return super.onKeyDown(keyCode, event); }
六、AsyncTask抽象类的使用
参考http://www.youcanmobile.cn/bbs/viewthread.php?tid=54&extra=page%3D1
七、在strings.xml中定义数组
在java中代码中调用:context.getResources().getStringArray(R.array.month_names)
<string-array name="month_names"> <item>January</item> <item>February</item> <item>March</item> <item>April</item> <item>May</item> <item>June</item> <item>July</item> <item>August</item> <item>September</item> <item>October</item> <item>November</item> <item>December</item> </string-array>
八、点击桌面上的widget时,弹出activity
Intent defineIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(definePage)); PendingIntent pendingIntent = PendingIntent.getActivity(context, 0 /* no requestCode */, defineIntent, 0 /* no flags */); RemoteViews.setOnClickPendingIntent(R.id.widget, pendingIntent); //R.id.widget是布局文件的根元素的id
发表评论
-
system挂载为rw
2011-07-28 15:07 2828adb shell #su #mount -o remou ... -
制作TextView的倒影
2011-07-19 13:52 2073package com.javaeye.graphics; ... -
Androkd开发坏境配置以及常用插件
2011-06-21 10:39 1125步骤: 1、安装jdk,并配置环境变量 2、解压android ... -
Android的selector,背景选择器
2011-05-22 11:50 1742首先android的selector是在drawable/xx ... -
PUSH机制
2011-04-20 13:54 13171、长连接 2、Android and XMPP htt ... -
ListView快速滑动搜索
2011-04-14 10:16 1273相关资料: Android-ListView快速滚动示例增加首 ... -
Android源码编译全过程
2011-03-18 09:39 83221, ubuntu 下源码编译 最好切换到root用户下进行操 ... -
测试环境Hosts设置
2011-02-25 18:25 1814设置方法: //启动虚拟手机并更改分区大小为128M emul ... -
Activity的launchMode
2011-01-16 17:02 865请看博客:http://marshal.easymorse.c ... -
android多分辨力支持 密度与分辨力
2010-12-29 15:37 1242关于Android的分辨率支持,为大家翻译官方文档 看世界杯的 ... -
用shape美化控件
2010-12-29 10:34 931如果你对Android系统自带的UI控件感觉不够满意, ... -
Android知识积累
2010-12-28 13:44 1010引用系统资源: android:textColor=& ... -
自定义对话框Dialog
2010-12-16 16:55 1530提醒对话框: 布局文件:alertdialog.xml < ... -
Dialog
2010-12-16 14:45 10981. 创建对话框 1. Showing ... -
Android 文件系统的结构
2010-11-06 22:56 10441、Android 文件系统的结构 Android源码编译后 ... -
DB和File工具类
2010-11-01 15:46 1548DB工具类: import java.io.B ... -
打造自己的动画效果
2010-10-29 14:25 1017当我们的软件基本功能都实现了之后,我们是不是还可以把它做的更好 ... -
画图,Shader Path
2010-10-28 16:42 1272package com.javaeye.android.my; ... -
Google API应用
2010-10-27 16:21 1626获取Location Provider: android lo ... -
使用SoundPool播放游戏音效
2010-10-12 15:51 1785在Android开发中我们经常使用MediaPlayer来播放 ...
相关推荐
Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习...
希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf
Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Spring...
人工智能学习笔记,人工智能学习笔记,人工智能学习笔记人工智能学习笔记,人工智能学习笔记,人工智能学习笔记人工智能学习笔记,人工智能学习笔记,人工智能学习笔记人工智能学习笔记,人工智能学习笔记,人工智能...
云的学习笔记-云的学习笔记系统-云的学习笔记系统源码-云的学习笔记管理系统-云的学习笔记管理系统java代码-云的学习笔记系统设计与实现-基于ssm的云的学习笔记系统-基于Web的云的学习笔记系统设计与实现-云的学习...
云的学习笔记-云的学习笔记系统-云的学习笔记系统源码-云的学习笔记管理系统-云的学习笔记管理系统java代码-云的学习笔记系统设计与实现-基于ssm的云的学习笔记系统-基于Web的云的学习笔记系统设计与实现-云的学习...
CCNA学习笔记 CCNA学习笔记 CCNA学习笔记
nginx学习笔记(软件+学习笔记) 仅供学习交流! 后续会持续分享相关资源,记得关注哦! nginx学习笔记(软件+学习笔记) 仅供学习交流! 后续会持续分享相关资源,记得关注哦! nginx学习笔记(软件+学习笔记) ...
2022吴恩达机器学习笔记汇总(共10章节).zip2022吴恩达机器学习笔记汇总(共10章节).zip2022吴恩达机器学习笔记汇总(共10章节).zip2022吴恩达机器学习笔记汇总(共10章节).zip2022吴恩达机器学习笔记汇总(共10章节).zip...
docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,...
ssh学习笔记1 ssh学习笔记1 ssh学习笔记1 ssh学习笔记1 ssh学习笔记1 ssh学习笔记1 ssh学习笔记1
PHP个人学习笔记
java学习笔记java学习笔记.zipjava学习笔记.zipjava学习笔记.zipjava学习笔记.zipjava学习笔记.zipjava学习笔记.zipjava学习笔记.zipjava学习笔记.zipjava学习笔记.zipjava学习笔记.zipjava学习笔记.zipjava学习笔记...
Contiki学习笔记:进程、事件、etimer关系 Contiki 实例: Contiki学习笔记:创建两个交互进程 Contiki 主函数剖析: Contiki学习笔记:main函数剖析 Contiki学习笔记:启动一个进程process_start Contiki学习笔记...