Questions tagged «android-intent»

有关实际,高级使用意图,意图额外和待决意图来启动活动,服务或通过BroadcastReceiver响应系统或应用程序事件/通知的问题。(有关基本知识,请参阅信息)

4
什么是即时广播?
我在android文档中遇到了这个词,并附带了定义 这些是广播,其数据在完成后由系统保留,因此客户端可以快速检索该数据,而不必等待下一个广播。 这是什么意思?有人可以举例说明它的用法吗?我相信我们必须请求使用此意图的许可吗?为什么这样? <uses-permission android:name="android.permission.BROADCAST_STICKY"/> - Allows an application to broadcast sticky intents.

4
如何在“活动”过渡上执行淡入淡出动画?
我正在整理徽标活动和主活动之间的过渡效果,但是我遇到的问题是,活动消失之前移至顶部: <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false" > <alpha android:duration="2000" android:fromAlpha="0.0" android:toAlpha="1.0" > </alpha> </set> 我如何才能改善此代码,以使其消失?

5
Intent.EXTRA_EMAIL未填充“收件人”字段
我正在尝试使用 意图从我的应用程序发送电子邮件,但不会填充电子邮件的“收件人”字段。如果我添加代码以填写主题或文本,则它们可以正常工作。仅“收件人”字段将不会填充。 我也尝试过将类型更改为“ text / plain”和“ text / html”,但遇到相同的问题。有人可以帮忙吗? public void Email(){ Intent emailIntent = new Intent(Intent.ACTION_SEND); emailIntent.setType("message/rfc822"); //set the email recipient String recipient = getString(R.string.IntegralEmailAddress); emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL , recipient); //let the user choose what email client to use startActivity(Intent.createChooser(emailIntent, "Send mail using...")); } 我要使用的电子邮件客户端是Gmail

4
使用startActivityForResult,如何在子活动中获取requestCode?
我有四个活动,分别是A,B,C和D。我的情况是A将通过startActivityForResult启动活动B。 startActivityForResult(new Intent(this,B.class),ONE); 在其他情况下,我将与其他情况一起发生。喜欢 startActivityForResult(new Intent(this,B.class),TWO); 在B中,我需要根据requestCode调用C或D。即如果一个人需要启动C否则D。 因此,我需要知道如何检查子Activity(此处为B)中的requestCode。 换句话说,我想获取活动B的开始请求代码。

8
动作栏的“主页”按钮的onClick侦听器
如何onClickListener为操作栏的“主页”按钮实现自定义? 我已经做了一个操作getSupportActionBar().setDisplayHomeAsUpEnabled(true);,现在我想将用户重定向到某个活动,以防单击“主页”按钮。 我尝试了: @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: item.setOnMenuItemClickListener(new OnMenuItemClickListener() { public boolean onMenuItemClick(MenuItem item) { Intent i = new Intent(); i.setClass(BestemmingActivity.this, StartActivity.class); i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(i); return true; } }); default: return super.onOptionsItemSelected(item); } } 但它永远不会进入onMenuItemClick。 基本上,它就像在此链接中一样完成,但仍未输入到侦听器中。

12
Android和Facebook分享意图
我正在开发一个Android应用程序,并且想知道如何使用Android的共享意图从该应用程序内更新应用程序用户的状态。 浏览了Facebook的SDK后,看来这很容易做到,但是我渴望允许用户通过常规的“共享意图”弹出窗口来做到这一点吗?在这里看到: 我已经尝试了常用的共享意图代码,但是对于Facebook来说似乎不再起作用。 public void invokeShare(Activity activity, String quote, String credit) { Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND); shareIntent.setType("text/plain"); shareIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, activity.getString(R.string.share_subject)); shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Example text"); activity.startActivity(Intent.createChooser(shareIntent, activity.getString(R.string.share_title))); } 更新:经过更多的挖掘,看来这是Facebook应用程序的一个错误,尚未解决!(facebook错误)同时,我似乎不得不忍受负面的“共享不起作用!!!” 评论。欢呼脸书:*(

10
您如何使用Intent.FLAG_ACTIVITY_CLEAR_TOP清除活动堆栈?
我已经阅读了有关使用此功能的几篇文章,但一定会丢失一些东西,因为它对我不起作用。我的活动A在清单中有launchmode =“ singleTop”。它以launchmode =“ singleInstance”启动活动B。活动B打开浏览器并接收并返回意图,这就是为什么它是singleInstance的原因。我试图覆盖“后退”按钮,以便将用户发送回活动A,然后可以按“上一步”离开活动,而不是再次返回活动B。 // activity B @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.ECLAIR && keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) onBackPressed(); return super.onKeyDown(keyCode, event); } @Override public void onBackPressed() { startActivity(new Intent(this, UI.class) .setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK)); return; } 从浏览器返回后,堆栈为... A,B,Browser,B 我希望此代码将堆栈更改为... A …

3
android.intent.action.MAIN是什么意思?
我看到了许多不同的令人困惑的赞美诗。 <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> 是什么意思 <action android:name="android.intent.action.MAIN" /> 和 <category android:name="android.intent.category.LAUNCHER" /> 和 <category android:name="android.intent.category.DEFAULT" />

4
Android:将数据(扩展名)传递给片段
我是Android编程的新手,将Parcelable的ArrayList传递给片段时遇到了问题。这是启动的活动(效果很好!),其中feedlist是可打包音乐的ArrayList。 Intent in = new Intent(context, ListMusicsActivity.class); in.putExtra("arrayMusic", feedList); activity.startActivity(in); 片段Activity onCreate()方法: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activitymusiclist); if(savedInstanceState != null) { ListMusicFragment frag = new ListMusicFragment(); frag.setArguments(getIntent().getExtras()); } } 片段代码: public class ListMusicFragment extends SherlockFragment{ private ArrayList<Music> listMusics = new ArrayList<Music>(); private ListView listMusic; @Override public View …

1
Android:捕获活动的返回
我对启动新活动有疑问。归结为这一点。我在视图上有3个标签 A) contains gMap activity B) camera activity C) some random text fields. 要求是应用程序以纵向模式运行。 除Camera Preview Surface(B)以外,所有3个选项卡均可按预期工作。将其旋转90度。他们唯一能使它正确的方法是将应用程序设置为横向模式,从而使我的所有选项卡乱七八糟,几乎是行不通的。 我的解决方案是:替换 我的相机活动中有一个常规活动为空,但没有 Intent i = new Intent(this,CameraActivity.class); startActivity(i); 这将启动我的CameraActivity。那很好。我必须进行线性布局,并包含3张看起来像真实标签的图像,因此我可以尝试模拟标签的操作,同时将屏幕旋转为横向,并使视觉效果保持为纵向。用户可以单击其中一个图像(按钮)以显示下一个选项卡。这是我的问题。它应退出我的“相机活动”,然后返回至标签中的“空白活动”,在此处应解释为单击图像中所需的标签。 最主要的是,当它返回时,它返回到选项卡下的空白(黑色)页面(因为它是“空”)。如何将返回事件捕获回到调用该活动的页面,然后查看它们执行了什么操作? 我可以设置一个onclicklistener,在其中我可以响应单击的假标签(图像)退出相机活动。退出时,标签应更新,以便您返回。有什么建议么? 谢谢,


6
通过意图传递ArrayList
我试图使用意图将arrayList传递给另一个活动。这是第一个活动中的代码。 case R.id.editButton: Toast.makeText(this, "edit was clicked", Toast.LENGTH_LONG).show(); Intent intent = new Intent(this, editList.class); intent.putStringArrayListExtra("stock_list", stock_list); startActivity(intent); break; 这是我尝试在第二个活动中检索列表的地方。这有什么问题吗? Intent i = new Intent(); //This should be getIntent(); stock_list = new ArrayList<String>(); stock_list = i.getStringArrayListExtra("stock_list");

6
无法启动服务意图
我有一个服务班。我将此类导出到jar,并将jar嵌入到客户端应用程序中。 需要时,我调用服务类。当我尝试执行此操作时,出现以下错误: Unable to start service Intent {comp={com.sample.service/com.sample.service.serviceClass}} : not found 除了服务类外,我还有其他类,可以访问(创建该类的对象)在同一jar内。 我觉得我错过了配置或清单中的某些内容。 请帮我识别一下。我的代码如下: public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Intent intent = new Intent () ; intent.setClassName("com.sample.service" ,"com.sample.service.serviceClass") ; this.startService(intent) ; // when I call this line I get the message... // binding other process continue here } 客户端manifest.xml …

4
在Android中使用Bundle代替直接Intent putExtra()的优点
在我的android应用程序中,我始终使用class的直接putExtra()函数Intent将任意数量的值传递给new Activity。 像这样: Intent i = new Intent(this, MyActivity.class); i.putExtra(ID_EXTRA1, "1"); i.putExtra(ID_EXTRA2, "111"); startActivity(i); 我知道Bundle在Android中,而且我已经看到人们正在使用Bundle将值传递给new Activity。 像这样: Intent intent = new Intent(this, MyActivity.class); Bundle extras = new Bundle(); extras.putString("EXTRA_USERNAME","my_username"); extras.putString("EXTRA_PASSWORD","my_password"); intent.putExtras(extras); startActivity(intent); 在这里我有两个疑问。如果可以通过将值直接传递给new来传递值,为什么还要使用? 使用而不是直接的优势是什么?BundleActivityIntentBundleIntent putExtra()


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.