一.真的需要new一个Intent吗? 在 Android 中,打开一个 Activity ,有多少种方式?不过不管是使用什么方式,最终都没办法逃避创建一个 Intent ,然后startActivity(). 那么,如果想根据数据来确定跳转的页面呢? 需要怎么做比较好一点.DeepLink 好像是一个不错的解决方案,在 AndroidManifest.xml 中,定义好 data 字段,标记好 scheme . host 等等,然后按照规则进行传递,这样也可以跳转到某些页面. 但是,这样真的方…
想在两个Activity之间传递一个对象Result,在网上差了很多,都需要序列化或者时下Paracelable,等等,试了很多都不行. 后来才制单,这个Result,根本不需要集成Sereriable或者 Paracelable,直接使用方法: new Gson().toJson(book));即可: 第一个Activity: Book book=new Book(); book.setTitle("Java编程思想"); Author author=new Author(); au…
Activity跳转与传值,主要是通过Intent类,Intent的作用是激活组件和附带数据. intent可以激活Activity,服务,广播三类组件. 本博文讲的是显示意图激活Activity组件.所谓显示意图就是在activity的激活时,显示指出了需要激活的activity的名字. 一.Activity跳转 方法一Intent intent = new Intent(A.this, B.class);  startActivity(intent) 方法二Intent intent = n…
这是myDiary这个工程下MainActivity中的protected void onListItemClick(ListView l, View v, int position, long id){}方法, new Intent(String action,Uri uri)构造器的具体说明如下, protected void onListItemClick(ListView l, View v, int position, long id) { // 重要 // Returns: a ne…
安卓开发-intent在Activity之间数据传递 [TOC] intent实现普通跳转 使用intent的setclass方法,示例(由此界面跳转到NewActivity界面) //使用setOnClickListener方法设置点击事件 Button button=(Button)findViewById(R.id.mainButton); button.setOnClickListener(new OnClickListener() { @Override public void onC…
1.0 可以利用Intent吧数据传递给上一个活动,新建一个叫“hellotest01”的项目. 新建活动FirstActivity,勾选“Generate Layout File”和“Launcher Activity”. 修改AndroidMainifest.xml中的内容: <activity android:name=".FirstActivity" android:label="第一个活动"> <intent-filter> <…
以下是常用到的Intent的URI及其示例,包含了大部分应用中用到的共用Intent 一.打开一个网页,类别是Intent.ACTION_VIEW 1 2 Uri uri = Uri.parse("http://www.android-study.com/"); Intent intent = new Intent(Intent.ACTION_VIEW, uri); 二.打开地图并定位到一个点 1 2 Uri uri = Uri.parse("geo:52.76,-79.03…
Intent intent = getPackageManager().getLaunchIntentForPackage(packageName); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP); switch (v.getId()) { case R.id.btnOpen1: intent.putExtra("roomid","1"); startA…
1.0 在helloworld项目基础上创建活动SecondActivity: 2.0 其中main.xml: <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/add_item" androi…
通过第一篇的解说,我们已经看到了怎样使用Intent来启动新的应用程序组件,可是实际上他们也能够使用sendBroadcast方法来在组件间匿名的广播消息. 作为一个系统级别的消息传递机制,Intent能够在进程之间发送结构化的消息. 因此,通过实现Broadcast Receiver来监听和响应应用程序内的这些Broadcast Intent. 通过使用Intent来广播一个事件,能够在不改动原始的应用程序的情况下.让我们开发者对事件做出反应.Android大量使用了Broadcast Rec…
一.如果多个Activity拥有同一个Intent Action,启动时用同一个Action启动会是什么情况? 如何指定某一个Activity启动? 在多个Activity拥有同一个Intent Action的情况下,如若想启动某一指定Activity,则在该<intent-filter> 中添加<data android:scheme="app"/>.而且,将启动的代码写为: startActivity(new Intent("com.w.learn…
对照 Android 的 Intent 与 iOS StoryBoard 的 Segue - Intent 假设也能添加个prepareForSegue回调就好了 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的漂亮人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再…
Parcelable相较于Serializable的效率更高 public class ChargeMode implements Parcelable{ public String name; public int playway; public String price; public String validTime; public ChargeMode(){ } private ChargeMode(Parcel in){ name = in.readString(); playway…
1.向下一个活动传递数据 String data ="bilibilbilbilbili"; Intent intent1=new Intent(this,secondActivity.class); intent.putExtra("extra_data",data);//第一个参数为转过去的标记名,第二个参数是本活动的参数名 2.对上一个活动获取数据 Intent intent2=getIntent();//获得上个活动的Intent String data=i…
转载自  http://www.raysoftware.cn/ 其实都可以通过intent和URI调用系统功能.Windows程序员可以理解成是ShellExecute.这个是万金油.可以有调用各种功能.后面会介绍. 1.短信息.很简单 方法a.不使用Intent而是直接发短信. smsManager对应的Delphi代码应该是: uses   Androidapi.JNI.JavaTypes,Androidapi.JNI.Telephony; var   j: JSmsManager; beg…
方法a.不使用Intent而是直接发短信. smsManager对应的Delphi代码应该是: uses Androidapi.JNI.JavaTypes,Androidapi.JNI.Telephony; var j: JSmsManager; begin j := tjsmsmanager.Create; j.sendTextMessage(stringtojstring('137114553XX'), nil, stringtojstring('测试短信'), nil, nil); end…
其实都可以通过intent和URI调用系统功能.Windows程序员可以理解成是ShellExecute.这个是万金油.可以有调用各种功能.后面会介绍. 1.短信息.很简单 方法a.不使用Intent而是直接发短信.smsManager对应的Delphi代码应该是: uses   Androidapi.JNI.JavaTypes,Androidapi.JNI.Telephony; var   j: JSmsManager; begin   j := tjsmsmanager.Create;   …
其实都可以通过intent和URI调用系统功能.Windows程序员可以理解成是ShellExecute.这个是万金油.可以有调用各种功能.后面会介绍. 1.短信息.很简单 方法a.不使用Intent而是直接发短信. smsManager对应的Delphi代码应该是: uses   Androidapi.JNI.JavaTypes,Androidapi.JNI.Telephony; var   j: JSmsManager; begin   j := tjsmsmanager.Create;  …
第一次编译时,设定android SDK: F:\RAD Studio XE6\PlatformSDKs\adt-bundle-windows-x86-20131030\sdk F:\RAD Studio XE6\PlatformSDKs\android-ndk-r9c C:\Program Files\Java\jdk1.7.0_40 SDK更新代理     XE6 不支持JStringToString.StringTojString.StrToJURI:use Androidapi.Help…
XE6 不支持JStringToString.StringTojString.StrToJURI:use Androidapi.Helpers //Splash Image Delphi XE5,XE6,XE7编译的程序在Android下启动会有一段时间黑屏,以前需要用Java扩展Activity增加Splash显示, 现在Delphi XE7增加了Splash Image显示功能了. 步骤: .鼠标右键点击工程,选择Options, .进入Application分页 .勾选Include Sp…
有时候,需要一些小的功能,找到以后,就把它贴到了博客下面,作为留言,查找起来很不方便,所以就整理一下,方便自己和他人. 一.  获取系统版本号: 1 PackageInfo info = this.getPackageManager().getPackageInfo(this.getPackageName(), 0); 2 int versionCode=nfo.versionCode 3 string versionName=info.versionNam 二.获取系统信息: 01 <span…
如今移动app市场已经是百花齐放,其中有不乏有很多大型公司.巨型公司都是通过app创业发展起来的:app类型更加丰富,有电子商务.有视频.有社交.有工具等等,基本上涵盖了各行各业每个角落,为了更加具有竞争力app不仅功能上有创性,内容也更加多元化,更加饱满,所以出现了巨大的工程.这些工程代码不停添加如果没有一个好的架构所有代码将会强耦合在一起,功能直接也会有很多依赖,那么就会出现很多问题:例如: 1.修改功能困难,牵一发动全身.很多地方如果api写的不好,封装不优雅,那么就会出现改一个地方需要改…
//获取手机信息 function GetPhoneInfo(): string; Var TelephonyManager: JTelephonyManager; TelephonyServiceNative: JObject; begin result := ''; TelephonyServiceNative := SharedActivityContext.getSystemService (TJContext.JavaClass.TELEPHONY_SERVICE); if Assig…
照相或从相册获取图片并裁剪 在android应用中很多时候都要获取图片(例如获取用户的头像)就需要从用户手机上获取图片.可以直接照,也可以从用户SD卡上获取图片,但获取到的图片未必能达到要求.所以要对图片进行一个 裁剪才能达到要求. 下面直接用个例子来说明怎么样来获取照相图片和相册中的图片并进行裁剪. 对其中的一些东西进行解释: 1. 创建一个文件对象dir是文件保存的路径,name是文件的名称 File sdcardTemple = new File(dir, name); 2. Intent…
结果: 1.不提示发短信卡住,点击没有反映,我猜想,可能是因为我用的是小米手机吧. 2.接收短信报错,我猜想可能是我改了里面的方法吧(哪位大神了解,求指教). 3.project -->options…--> users permitions. 3.1 Send SMS 3.2 Read Phone State权限:将其变成 true即可. 如果 read phone state为 false,程序将启动不了,一直黑屏(我没试,原作者是这么说的,你如果没事可以试一试,试过记得给我说一声哦).…
是这样的:我使用系统的图片浏览器,然后让它自动跳到图片裁切界面,当我们定义了返回的图片大小过大,而我们实际的图片像素达不到时,系统为我们自动地填充了不够的像素成黑色,那么我们怎么样来解决这个问题呢?不说了,上代码: Intent intent = new Intent("android.intent.action.PICK"); intent.setDataAndType( MediaStore.Images.Media.INTERNAL_CONTENT_URI, "imag…
转载请注明出处:http://blog.csdn.net/allen315410/article/details/39994913 近期从曾经的项目中扒下来一个经常使用的模块.在这里有必要记录一下的.就是android上获取图片以及裁剪图片,怎么样?这个功能是不是非经常常使用啊,你随便打开一个App.仅仅要它有注冊功能都会有设置人物头像的功能,尤其在内容型的app中更为常见,那么这些功能是怎么实现的呢?今天,在这里就记录一下好了.防止以后的项目中也会用到,就直接拿来用好了. 1.通过拍照或者图冊…
打开后缀.apk的文件.即启动安装程序. //apkFilePath 文件路径 public void installAPK(String apkFilePath) { // 创建URI Uri uri = Uri.fromFile(new File(apkFilePath)); Intent intent = new Intent(Intent.ACTION_VIEW); // 设置Uri和类型 intent.setDataAndType(uri, "application/vnd.andro…
一.调用照相机 注:surfaceView在当Activity不在前台的时候,会被销毁(onPause方法之后,执行销毁方法)当Activity回到前台时,在Activity执行onResume方法之后,会被重新创建,虽然如此,但并不需要在onResume方法中获取创建事件,因为surfaceView的生命周期可以通过其自身回调函数获取; public class MainActivity extends Activity { private Camera camera; @Override p…
最近从以前的项目中扒下来一个常用的模块,在这里有必要记录一下的,就是android上获取图片以及裁剪图片,怎么样?这个功能是不是很常用啊,你随便打开一个App,只要它有注册功能都会有设置人物头像的功能,尤其在内容型的app中更为常见,那么这些功能是怎么实现的呢?今天,在这里就记录一下好了,防止以后的项目中也会用到,就直接拿来用好了. 1.通过拍照或者图册获取图片(不需要剪裁) 这种获取图片的方式就比较次了,因为不设置图片的剪裁功能,有可能因为图片过大,导致OOM,但是这种方式也是有必要讲一下的,…