我想将以下ArrayList从一个活动发送到另一个活动请帮忙.
ContactBean m_objUserDetails = new ContactBean();
ArrayList<ContactBean> ContactLis = new ArrayList<ContactBean>();
Run Code Online (Sandbox Code Playgroud)
我在如下添加数据后发送上面的arraylist
Intent i = new Intent(this,DisplayContact.class);
i.putExtra("Contact_list", ContactLis);
startActivity(i);
Run Code Online (Sandbox Code Playgroud)
但是我在恢复时遇到了问题.
ArrayList<ContactBean> l1 = new ArrayList<ContactBean>();
Bundle wrapedReceivedList = getIntent().getExtras();
l1= wrapedReceivedList.getCharSequenceArrayList("Contact_list");
Run Code Online (Sandbox Code Playgroud)
此时我收到此错误:
Type mismatch: cannot convert from ArrayList<CharSequence> to ArrayList<ContactBean>
Run Code Online (Sandbox Code Playgroud)
我的ContactBean类实现了Serializable,也请告诉我们为什么要实现可序列化的接口.
有没有办法根据条件动态更改Android中的启动活动?我试图做的(不起作用)如下:
.
if (condition) {
startActivity(new Intent(this, MenuActivity.class));
} else {
startActivity(new Intent(this, LoginActivity.class));
}
Run Code Online (Sandbox Code Playgroud) 所以我理解(我认为)关于广播意图和接收消息给他们.
所以现在,我的问题/我无法解决的问题是如何从onReceive接收器的方法向活动发送消息.让我们说我有一个接收器:
public class ReceiveMessages extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
String action = intent.getAction();
if(action.equalsIgnoreCase(TheService.DOWNLOADED)){
// send message to activity
}
}
}
Run Code Online (Sandbox Code Playgroud)
我如何向活动发送消息?
我是否必须在我想要发送消息的活动中实例化接收器并以某种方式监视它?或者是什么?我理解这个概念,但不是真正的应用程序.
任何帮助都会非常棒,谢谢.
汤姆
在我的应用程序的某些部分,有一个这样的活动结构:

Activity A是我的家庭活动,我在每个流程或流程后回来.
Activity B是一个简单的确认活动.
Activity C是另一项确认活动.
Activity D做一些过程,最后它将结果返回到我的家庭活动(Activity A).
Activity B并且C:
finish()并且什么都不做.finish()我正在考虑使用startActivityForResult()但我从来没有用过它来通过多个活动传递结果.
我还想通过一个handler(创建Activity A)调用一些方法Activity A并执行Activity D...
我怎么能实现它?
我正在使用NotificationCompat库向系统栏添加通知.此通知有两个操作按钮.此外,AutoCancel()Notification上的属性设置为true.
单击操作按钮,系统配置为启动IntentService调用NotificationManager.cancel(NOTIFICATION_ID),然后在新任务中启动活动.
问题是虽然此调用会从托盘中删除通知,但它不会折叠抽屉.被叫活动在抽屉后面绘制.
除了取消通知之外,有人可以详细说明关闭抽奖需要什么特殊代码吗?
谢谢.
我的应用程序可以从库中选择照片.我想要从这个选择中获取文件路径.
这是创建选择照片的意图的代码:
Intent photoPickerIntent = new Intent(Intent.ACTION_PICK,
MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, INTENT_REQUEST_CODE_SELECT_PHOTO);
Run Code Online (Sandbox Code Playgroud)
这是从URI获取文件路径的代码:
Cursor cursor = null;
String path = null;
try {
String[] projection = { MediaStore.Images.Media.DATA };
cursor = context.getContentResolver().query(contentUri, projection, null, null, null);
int columnIndex = cursor.getColumnIndexOrThrow(projection[0]);
cursor.moveToFirst();
path = cursor.getString(columnIndex);
} finally {
if (cursor != null) {
cursor.close();
}
}
return path;
Run Code Online (Sandbox Code Playgroud)
在昨天更新Google相册应用之前,一切都运转良好.path解析URI后现在为null.
URI类似于: content://com.google.android.apps.photos.contentprovider/0/1/content%3A%2F%2Fmedia%2Fexternal%2Fimages%2Fmedia%2F75209/ACTUAL
我还试图用Intent.ACTION_GET_CONTENT动作创建意图 - 没有运气.
我正在使用Android L过渡ActivityOptions在意图中传递一个包.如何以相同的意图重现动画TaskStackBuilder?
这是我目前的单一工作方法Intent:
startActivity(myIntent, ActivityOptions.makeSceneTransitionAnimation(this).toBundle());
Run Code Online (Sandbox Code Playgroud)
这是我的尝试TaskStackBuilder:
TaskStackBuilder builder = TaskStackBuilder.create(this);
builder.addNextIntentWithParentStack(myIntent);
builder.startActivities(ActivityOptions.makeSceneTransitionAnimation(this).toBundle());
Run Code Online (Sandbox Code Playgroud)
但动画创造了一种奇怪的效果,而不是"单一意图"版本.
我也尝试过:
builder.addNextIntent(myIntent);
Run Code Online (Sandbox Code Playgroud)
代替:
builder.addNextIntentWithParentStack(myIntent);
Run Code Online (Sandbox Code Playgroud) 能Activity.getIntent()回来null吗?
该文件没有提到这种可能性,所以我想知道如果我要检查的结果getIntent()为null解引用前值.
我希望activity使用从下到上的动画显示一个到另一个Intent.
给我一些例子如下
Intent i2 = new Intent(main.this, test.class);
startActivity(i2);
Run Code Online (Sandbox Code Playgroud)
动画从下到上.
我正在设计一个应用程序,我想在地图上显示特定的位置.我正在传递String已经放置的地址Google Map.以下是我的Intent代码..
String url = "http://maps.google.com/maps?daddr="+address;
Intent intent = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
但它给了我谷歌地图获取方向.我知道为什么会这样,因为我用过daddr,url但我不知道具体位置使用什么..请告诉我在那里使用什么..
android ×10
android-intent ×10
animation ×2
bundle ×1
google-maps ×1
handler ×1
java ×1
launcher ×1
serializable ×1