Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 正在将意图为的数组发送到不同的包_Java_Android_Arrays_Android Intent - Fatal编程技术网

Java 正在将意图为的数组发送到不同的包

Java 正在将意图为的数组发送到不同的包,java,android,arrays,android-intent,Java,Android,Arrays,Android Intent,我对数组的意图有问题。我想发送一个矩形数组到另一个包。我跟在后面。不幸的是,我仍然有一个问题的意图。因此,我有类活动要发送。我想将storePrintIMC发送到另一个包的类(SamplePreferenceActivity)中 ActivityToSendclass: public class ActivityToSend extends Activity { private Activity activity; private ArrayList<String[]>

我对数组的意图有问题。我想发送一个矩形数组到另一个包。我跟在后面。不幸的是,我仍然有一个问题的意图。因此,我有类
活动要发送
。我想将
storePrintIMC
发送到另一个包的类(
SamplePreferenceActivity
)中

ActivityToSend
class:

public class ActivityToSend extends Activity {
    private Activity activity;
    private ArrayList<String[]> data;
    private static LayoutInflater inflater = null;
    public String[] inkLevels = new String[5];
    View message;
    String [][] storePrintIMC= new String [4][4];
    public static final String ARRAYS_COUNT = "com.Status.App.ARRAYS_COUNT";
    public static final String ARRAY_INDEX = "com.Status.App.ARRAY_INDEX"; 

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        final String data[][] = storePrintIMC; 
        Bundle bundle = new Bundle();
        int count = data.length; 
        bundle.putInt(ARRAYS_COUNT, count); 
        for (int i = 0; i < count; i++)
        { 
            bundle.putStringArray(ARRAY_INDEX + i, data[i]); 
        } 
        Intent intent = new Intent(this, SamplePreferenceActivity.class); 
        intent.putExtras(bundle);

        startActivity(intent);
    }
}

我不知道我要改变什么。你知道吗?

由于
SamplePreferenceActivity
位于不同的包中,因此需要将类导入
ActivityToSend
。这就像其他进口商品一样。根据清单中的内容判断,您需要将其放在
com.PrinterStatus.AppLab.ActivityToSend.java
的顶部附近(与其他
import
语句一起):


如果您使用的是Eclipse,您可能可以使用ctrl-shift-O自动解决导入问题。

错误是什么?您是否导入了
SamplePreferenceActivity
?如何导入它?它是在android清单中还是在类中?当我把它放在课堂上是不可能添加的,你看到我的答案了吗?另外(如果您遇到编译器错误,这并没有什么区别),您真的需要清单中的
android:parentActivityName
属性吗?只有当您从
活动以外的其他地方开始
SamplePreferenceActivity
活动时,才需要它。是的,先生!给你一个答案!,我把另一个软件包误读为另一个应用程序。对不起,谢谢你的回复。不过我还是有问题。在ActivityToSend类中出现错误:构造函数包(ActivityToSend,class)未定义。@Carlos-我在您的原始帖子中没有看到该代码。为什么您要尝试构建这样的
捆绑包
?这些参数看起来应该是一个新的
Intent
,而不是我用于Intent的新
Bundle
@TedHopp-Bundle。我从这个站点引用()你还有其他解决方案吗?@Carlos-使用具有
意图的
捆绑包
没有问题。然而,它们必须正确建造。类似这样的内容:
Bundle b=new Bundle();/*将内容放入b,然后:**/Intent-Intent=newintent(这个,SamplePreferenceActivity.class);意向.附加条款(b);星触觉(意向)。请注意,
Bundle
构造函数不带参数。
public class SamplePreferenceActivity extends PreferenceActivity {    
    private static final int DIALOG_READ_ME = 1;
    public String[] inkLevels = new String[5];

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Bundle bundle = getIntent().getExtras();
        if (bundle != null) {
            int count = bundle.getInt(ActivityToSend.ARRAYS_COUNT, 0);

            ArrayList<String[]> arrays = new ArrayList<String[]>(count);

            for (int i = 0; i < count; i++)
                arrays.add(bundle.getStringArray(ActivityToSmartWatch.ARRAY_INDEX + i));

            String[][] data = arrays.toArray(new String[][]{});
        }
    }
}
<activity android:name=".SamplePreferenceActivity " android:label="@string/preference_activity_title">
<meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.PrinterStatus.AppLab.SamplePreferenceActivity " /> 
  - <intent-filter>
        <action android:name="android.intent.action.MAIN" /> 
    </intent-filter>
</activity>
<activity android:name="com.sonyericsson.extras.liveware.extension.controlsample.SamplePreferenceActivity" android:parentActivityName="com.PrinterStatus.AppLab.ActivityToSend" /> 
<service android:name="com.sonyericsson.extras.liveware.extension.controlsample.SampleExtensionService" /> 
Intent intent = new Intent(this, SamplePreferenceActivity.class);
import com.sonyericsson.extras.liveware.extension.controlsample.SamplePreferenceActivity;