将值存储到Intent中而不启动新的Activity

时间:2013-12-04 17:40:10

标签: java android xml android-intent

我必须检索应用程序所需的许可证总数,并将此值存储在第二个Activity中,但不要让它以意图打开。我写了这段代码。

    try {
        PackageInfo packageInfo = getActivity().getPackageManager().getPackageInfo(value2, PackageManager.GET_PERMISSIONS);

        String[] requestedPermissions = packageInfo.requestedPermissions;
        if ( requestedPermissions != null ) {
            for ( i = 0; i < requestedPermissions.length; i++) {
                permissions.append(requestedPermissions[i]+"\n");
                int total = i++;
                Intent intent = new Intent();
                intent.putExtra("totalPermissions",total);

            }
        }
    }
    catch ( PackageManager.NameNotFoundException e ) {
        e.printStackTrace();
    }

在另一个PreferenceActivity

Bundle extras = getIntent().getExtras();
        if(extras!=null) {
        int tot = extras.getInt("totalPermissions");

permissionsPreference.setSummary(""+tot);

在Prefence摘要中返回0.为什么?错误在哪里?

2 个答案:

答案 0 :(得分:0)

你在使用不同的钥匙同时放置价值并从意图中获取价值,这就是你获得零的原因。

答案 1 :(得分:0)

这两个意图并不相同。您可以在第一个活动中创建public static int total;修改其值,并通过FirstActivity.total在第二个活动中获取其值